browser(webkit): Reduce binary size of WebKit Linux build bundles (GTK and WPE) (#2880)

This patch changes the build system to use the JHBuild minimal dependency
system introduced in WebKit r264092 <https://trac.webkit.org/r264092>

The build has been tested with Ubuntu-18.04

The binary size of the zip bundles is now: 37M (WPE) and 40M (GTK).
Previously it was 54M and 59M (respectively)
This commit is contained in:
Carlos Alberto Lopez Perez 2020-07-09 20:37:13 +02:00 committed by GitHub
parent e90ba26250
commit cb8b1bca97
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 65 additions and 55 deletions

View file

@ -1,2 +1,2 @@
1305 1306
Changed: yurys@chromium.org Wed Jul 8 15:26:58 PDT 2020 Changed: clopez@igalia.com Wed Jul 8 18:31:52 PDT 2020

View file

@ -1,3 +1,3 @@
REMOTE_URL="https://github.com/webkit/webkit" REMOTE_URL="https://github.com/webkit/webkit"
BASE_BRANCH="master" BASE_BRANCH="master"
BASE_REVISION="19d11039faa6e4da8cf7487e9c54a00a7c6e18e2" BASE_REVISION="822da5711ad337e1a7da82e813aa99e14fb79e49"

View file

@ -75,11 +75,15 @@ createZipForLinux() {
# Copy libvpx.so.5 as Ubuntu 20.04 comes with libvpx.so.6 # Copy libvpx.so.5 as Ubuntu 20.04 comes with libvpx.so.6
ldd WebKitBuild/WPE/Release/bin/MiniBrowser | grep -o '[^ ]*\/libvpx.so.5[^ ]*' | xargs cp -t $tmpdir ldd WebKitBuild/WPE/Release/bin/MiniBrowser | grep -o '[^ ]*\/libvpx.so.5[^ ]*' | xargs cp -t $tmpdir
# Copy some wayland libraries required for Web Process t # Copy some wayland libraries required for Web Process t
cp -d -t $tmpdir WebKitBuild/WPE/DependenciesWPE/Root/lib/libva\-* if ls WebKitBuild/WPE/DependenciesWPE/Root/lib/libva\-* 2>&1 >/dev/null; then
cp -d -t $tmpdir WebKitBuild/WPE/DependenciesWPE/Root/lib/libva\-*
fi
# Injected bundle is loaded dynamicly via dlopen => not bt listed by ldd. # Injected bundle is loaded dynamicly via dlopen => not bt listed by ldd.
cp -t $tmpdir WebKitBuild/WPE/Release/lib/libWPEInjectedBundle.so cp -t $tmpdir WebKitBuild/WPE/Release/lib/libWPEInjectedBundle.so
mkdir -p $tmpdir/gio/modules if test -d $PWD/WebKitBuild/WPE/DependenciesWPE/Root/lib/gio/modules/; then
cp -t $tmpdir/gio/modules $PWD/WebKitBuild/WPE/DependenciesWPE/Root/lib/gio/modules/* mkdir -p $tmpdir/gio/modules
cp -t $tmpdir/gio/modules $PWD/WebKitBuild/WPE/DependenciesWPE/Root/lib/gio/modules/*
fi
cd $tmpdir cd $tmpdir
ln -s libWPEBackend-fdo-1.0.so.1 libWPEBackend-fdo-1.0.so ln -s libWPEBackend-fdo-1.0.so.1 libWPEBackend-fdo-1.0.so
@ -100,11 +104,13 @@ createZipForLinux() {
cp -t $tmpdir WebKitBuild/GTK/Release/lib/libwebkit2gtkinjectedbundle.so cp -t $tmpdir WebKitBuild/GTK/Release/lib/libwebkit2gtkinjectedbundle.so
# Copy libvpx.so.5 as Ubuntu 20.04 comes with libvpx.so.6 # Copy libvpx.so.5 as Ubuntu 20.04 comes with libvpx.so.6
ldd WebKitBuild/GTK/Release/bin/MiniBrowser | grep -o '[^ ]*\/libvpx.so.5[^ ]*' | xargs cp -t $tmpdir ldd WebKitBuild/GTK/Release/bin/MiniBrowser | grep -o '[^ ]*\/libvpx.so.5[^ ]*' | xargs cp -t $tmpdir
mkdir -p $tmpdir/gio/modules if test -d $PWD/WebKitBuild/GTK/DependenciesGTK/Root/lib/gio/modules; then
cp -t $tmpdir/gio/modules $PWD/WebKitBuild/GTK/DependenciesGTK/Root/lib/gio/modules/* mkdir -p $tmpdir/gio/modules
cp -t $tmpdir/gio/modules $PWD/WebKitBuild/GTK/DependenciesGTK/Root/lib/gio/modules/*
fi
# we failed to nicely build libgdk_pixbuf - expect it in the env # we failed to nicely build libgdk_pixbuf - expect it in the env
rm $tmpdir/libgdk_pixbuf* rm -f $tmpdir/libgdk_pixbuf*
else else
echo "ERROR: must specify --gtk or --wpe" echo "ERROR: must specify --gtk or --wpe"
exit 1 exit 1

View file

@ -7,16 +7,16 @@ cd "$(dirname $0)"
build_gtk() { build_gtk() {
if ! [[ -d ./WebKitBuild/GTK/DependenciesGTK ]]; then if ! [[ -d ./WebKitBuild/GTK/DependenciesGTK ]]; then
yes | WEBKIT_JHBUILD=1 WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/GTK DEBIAN_FRONTEND=noninteractive ./Tools/Scripts/update-webkitgtk-libs yes | WEBKIT_JHBUILD=1 WEBKIT_JHBUILD_MODULESET=minimal WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/GTK DEBIAN_FRONTEND=noninteractive ./Tools/Scripts/update-webkitgtk-libs
fi fi
WEBKIT_JHBUILD=1 WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/GTK ./Tools/Scripts/build-webkit --gtk --release --touch-events --orientation-events MiniBrowser WEBKIT_JHBUILD=1 WEBKIT_JHBUILD_MODULESET=minimal WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/GTK ./Tools/Scripts/build-webkit --gtk --release --touch-events --orientation-events --no-bubblewrap-sandbox MiniBrowser
} }
build_wpe() { build_wpe() {
if ! [[ -d ./WebKitBuild/WPE/DependenciesWPE ]]; then if ! [[ -d ./WebKitBuild/WPE/DependenciesWPE ]]; then
yes | WEBKIT_JHBUILD=1 WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/WPE DEBIAN_FRONTEND=noninteractive ./Tools/Scripts/update-webkitwpe-libs yes | WEBKIT_JHBUILD=1 WEBKIT_JHBUILD_MODULESET=minimal WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/WPE DEBIAN_FRONTEND=noninteractive ./Tools/Scripts/update-webkitwpe-libs
fi fi
WEBKIT_JHBUILD=1 WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/WPE ./Tools/Scripts/build-webkit --wpe --release --touch-events --orientation-events MiniBrowser WEBKIT_JHBUILD=1 WEBKIT_JHBUILD_MODULESET=minimal WEBKIT_OUTPUTDIR=$(pwd)/WebKitBuild/WPE ./Tools/Scripts/build-webkit --wpe --release --touch-events --orientation-events --no-bubblewrap-sandbox MiniBrowser
} }
if [[ "$(uname)" == "Darwin" ]]; then if [[ "$(uname)" == "Darwin" ]]; then

View file

@ -5471,7 +5471,7 @@ index 44737686187a06a92c408ea60b63a48ac8481334..c754a763688b52e7ddd47493296ef9b0
bool PlatformKeyboardEvent::currentCapsLockState() bool PlatformKeyboardEvent::currentCapsLockState()
diff --git a/Source/WebKit/NetworkProcess/NetworkProcess.cpp b/Source/WebKit/NetworkProcess/NetworkProcess.cpp diff --git a/Source/WebKit/NetworkProcess/NetworkProcess.cpp b/Source/WebKit/NetworkProcess/NetworkProcess.cpp
index 0376dc5243fc08ca8378de9d950600e2ee73b1cf..8984ccc212a1cc312aef30c36cf6d41fab57014a 100644 index fe69c2dc967728ed14195dded9fa3af1423aaa85..6c7ac36c4304cefeb8313c636823569d3bb8a585 100644
--- a/Source/WebKit/NetworkProcess/NetworkProcess.cpp --- a/Source/WebKit/NetworkProcess/NetworkProcess.cpp
+++ b/Source/WebKit/NetworkProcess/NetworkProcess.cpp +++ b/Source/WebKit/NetworkProcess/NetworkProcess.cpp
@@ -26,7 +26,6 @@ @@ -26,7 +26,6 @@
@ -7963,7 +7963,7 @@ index d8f25b7ed5194616f064f5e2e1c3ec81490608b3..54048e141a5c23186191718f91fad219
void saveBackForwardSnapshotForCurrentItem(); void saveBackForwardSnapshotForCurrentItem();
void saveBackForwardSnapshotForItem(WebBackForwardListItem&); void saveBackForwardSnapshotForItem(WebBackForwardListItem&);
diff --git a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm diff --git a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
index 64b7fd4a72ccc76abfe56b8182a38a7edaae75ec..6212c25ec84db75557d74651bcb19c177a122646 100644 index f9e2de0d818511c7f2b77519279e36ea9dc93de1..1740218caa5e4db83ac01120f52fa646e86e3ea9 100644
--- a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm --- a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
+++ b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm +++ b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm
@@ -4436,6 +4436,18 @@ static RetainPtr<CGImageRef> takeWindowSnapshot(CGSWindowID windowID, bool captu @@ -4436,6 +4436,18 @@ static RetainPtr<CGImageRef> takeWindowSnapshot(CGSWindowID windowID, bool captu
@ -11832,7 +11832,7 @@ index 0000000000000000000000000000000000000000..20311d530090b0229010957a96fc60f4
+ +
+} // namespace WebKit +} // namespace WebKit
diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp
index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1ce04bb1d4 100644 index 5c183b5cd3822a96a45041e7521b5621f15ece5c..8371eda890b6e164d1dbbc25f1af7175cf782a8e 100644
--- a/Source/WebKit/UIProcess/WebPageProxy.cpp --- a/Source/WebKit/UIProcess/WebPageProxy.cpp
+++ b/Source/WebKit/UIProcess/WebPageProxy.cpp +++ b/Source/WebKit/UIProcess/WebPageProxy.cpp
@@ -953,6 +953,7 @@ void WebPageProxy::finishAttachingToWebProcess(ProcessLaunchReason reason) @@ -953,6 +953,7 @@ void WebPageProxy::finishAttachingToWebProcess(ProcessLaunchReason reason)
@ -11961,7 +11961,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
void WebPageProxy::pluginScaleFactorDidChange(double pluginScaleFactor) void WebPageProxy::pluginScaleFactorDidChange(double pluginScaleFactor)
{ {
m_pluginScaleFactor = pluginScaleFactor; m_pluginScaleFactor = pluginScaleFactor;
@@ -4435,6 +4501,7 @@ void WebPageProxy::didDestroyNavigation(uint64_t navigationID) @@ -4422,6 +4488,7 @@ void WebPageProxy::didDestroyNavigation(uint64_t navigationID)
// FIXME: Message check the navigationID. // FIXME: Message check the navigationID.
m_navigationState->didDestroyNavigation(navigationID); m_navigationState->didDestroyNavigation(navigationID);
@ -11969,7 +11969,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
} }
void WebPageProxy::didStartProvisionalLoadForFrame(FrameIdentifier frameID, FrameInfoData&& frameInfo, ResourceRequest&& request, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData) void WebPageProxy::didStartProvisionalLoadForFrame(FrameIdentifier frameID, FrameInfoData&& frameInfo, ResourceRequest&& request, uint64_t navigationID, URL&& url, URL&& unreachableURL, const UserData& userData)
@@ -4657,6 +4724,8 @@ void WebPageProxy::didFailProvisionalLoadForFrameShared(Ref<WebProcessProxy>&& p @@ -4644,6 +4711,8 @@ void WebPageProxy::didFailProvisionalLoadForFrameShared(Ref<WebProcessProxy>&& p
m_failingProvisionalLoadURL = { }; m_failingProvisionalLoadURL = { };
@ -11978,7 +11978,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
// If the provisional page's load fails then we destroy the provisional page. // If the provisional page's load fails then we destroy the provisional page.
if (m_provisionalPage && m_provisionalPage->mainFrame() == frame && willContinueLoading == WillContinueLoading::No) if (m_provisionalPage && m_provisionalPage->mainFrame() == frame && willContinueLoading == WillContinueLoading::No)
m_provisionalPage = nullptr; m_provisionalPage = nullptr;
@@ -5098,7 +5167,14 @@ void WebPageProxy::decidePolicyForNavigationActionAsync(FrameIdentifier frameID, @@ -5085,7 +5154,14 @@ void WebPageProxy::decidePolicyForNavigationActionAsync(FrameIdentifier frameID,
NavigationActionData&& navigationActionData, FrameInfoData&& originatingFrameInfo, Optional<WebPageProxyIdentifier> originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request, NavigationActionData&& navigationActionData, FrameInfoData&& originatingFrameInfo, Optional<WebPageProxyIdentifier> originatingPageID, const WebCore::ResourceRequest& originalRequest, WebCore::ResourceRequest&& request,
IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID) IPC::FormDataReference&& requestBody, WebCore::ResourceResponse&& redirectResponse, const UserData& userData, uint64_t listenerID)
{ {
@ -11994,7 +11994,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
} }
void WebPageProxy::decidePolicyForNavigationActionAsyncShared(Ref<WebProcessProxy>&& process, PageIdentifier webPageID, FrameIdentifier frameID, FrameInfoData&& frameInfo, void WebPageProxy::decidePolicyForNavigationActionAsyncShared(Ref<WebProcessProxy>&& process, PageIdentifier webPageID, FrameIdentifier frameID, FrameInfoData&& frameInfo,
@@ -5607,6 +5683,7 @@ void WebPageProxy::createNewPage(FrameInfoData&& originatingFrameInfoData, Optio @@ -5594,6 +5670,7 @@ void WebPageProxy::createNewPage(FrameInfoData&& originatingFrameInfoData, Optio
auto* originatingPage = m_process->webPage(*originatingPageID); auto* originatingPage = m_process->webPage(*originatingPageID);
auto originatingFrameInfo = API::FrameInfo::create(WTFMove(originatingFrameInfoData), originatingPage); auto originatingFrameInfo = API::FrameInfo::create(WTFMove(originatingFrameInfoData), originatingPage);
auto mainFrameURL = m_mainFrame ? m_mainFrame->url() : URL(); auto mainFrameURL = m_mainFrame ? m_mainFrame->url() : URL();
@ -12002,7 +12002,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
auto completionHandler = [this, protectedThis = makeRef(*this), mainFrameURL, request, reply = WTFMove(reply)] (RefPtr<WebPageProxy> newPage) mutable { auto completionHandler = [this, protectedThis = makeRef(*this), mainFrameURL, request, reply = WTFMove(reply)] (RefPtr<WebPageProxy> newPage) mutable {
if (!newPage) { if (!newPage) {
reply(WTF::nullopt, WTF::nullopt); reply(WTF::nullopt, WTF::nullopt);
@@ -5636,6 +5713,7 @@ void WebPageProxy::createNewPage(FrameInfoData&& originatingFrameInfoData, Optio @@ -5623,6 +5700,7 @@ void WebPageProxy::createNewPage(FrameInfoData&& originatingFrameInfoData, Optio
void WebPageProxy::showPage() void WebPageProxy::showPage()
{ {
m_uiClient->showPage(this); m_uiClient->showPage(this);
@ -12010,7 +12010,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
} }
void WebPageProxy::exitFullscreenImmediately() void WebPageProxy::exitFullscreenImmediately()
@@ -5671,6 +5749,10 @@ void WebPageProxy::closePage() @@ -5658,6 +5736,10 @@ void WebPageProxy::closePage()
if (isClosed()) if (isClosed())
return; return;
@ -12021,7 +12021,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
RELEASE_LOG_IF_ALLOWED(Process, "closePage:"); RELEASE_LOG_IF_ALLOWED(Process, "closePage:");
pageClient().clearAllEditCommands(); pageClient().clearAllEditCommands();
m_uiClient->close(this); m_uiClient->close(this);
@@ -5690,6 +5772,8 @@ void WebPageProxy::runJavaScriptAlert(FrameIdentifier frameID, FrameInfoData&& f @@ -5677,6 +5759,8 @@ void WebPageProxy::runJavaScriptAlert(FrameIdentifier frameID, FrameInfoData&& f
if (auto* automationSession = process().processPool().automationSession()) if (auto* automationSession = process().processPool().automationSession())
automationSession->willShowJavaScriptDialog(*this); automationSession->willShowJavaScriptDialog(*this);
} }
@ -12030,7 +12030,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
m_uiClient->runJavaScriptAlert(*this, message, frame, WTFMove(frameInfo), WTFMove(reply)); m_uiClient->runJavaScriptAlert(*this, message, frame, WTFMove(frameInfo), WTFMove(reply));
} }
@@ -5707,6 +5791,8 @@ void WebPageProxy::runJavaScriptConfirm(FrameIdentifier frameID, FrameInfoData&& @@ -5694,6 +5778,8 @@ void WebPageProxy::runJavaScriptConfirm(FrameIdentifier frameID, FrameInfoData&&
if (auto* automationSession = process().processPool().automationSession()) if (auto* automationSession = process().processPool().automationSession())
automationSession->willShowJavaScriptDialog(*this); automationSession->willShowJavaScriptDialog(*this);
} }
@ -12039,7 +12039,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
m_uiClient->runJavaScriptConfirm(*this, message, frame, WTFMove(frameInfo), WTFMove(reply)); m_uiClient->runJavaScriptConfirm(*this, message, frame, WTFMove(frameInfo), WTFMove(reply));
} }
@@ -5725,6 +5811,8 @@ void WebPageProxy::runJavaScriptPrompt(FrameIdentifier frameID, FrameInfoData&& @@ -5712,6 +5798,8 @@ void WebPageProxy::runJavaScriptPrompt(FrameIdentifier frameID, FrameInfoData&&
if (auto* automationSession = process().processPool().automationSession()) if (auto* automationSession = process().processPool().automationSession())
automationSession->willShowJavaScriptDialog(*this); automationSession->willShowJavaScriptDialog(*this);
} }
@ -12048,7 +12048,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
m_uiClient->runJavaScriptPrompt(*this, message, defaultValue, frame, WTFMove(frameInfo), WTFMove(reply)); m_uiClient->runJavaScriptPrompt(*this, message, defaultValue, frame, WTFMove(frameInfo), WTFMove(reply));
} }
@@ -5880,6 +5968,8 @@ void WebPageProxy::runBeforeUnloadConfirmPanel(FrameIdentifier frameID, FrameInf @@ -5867,6 +5955,8 @@ void WebPageProxy::runBeforeUnloadConfirmPanel(FrameIdentifier frameID, FrameInf
return; return;
} }
} }
@ -12057,7 +12057,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
// Since runBeforeUnloadConfirmPanel() can spin a nested run loop we need to turn off the responsiveness timer and the tryClose timer. // Since runBeforeUnloadConfirmPanel() can spin a nested run loop we need to turn off the responsiveness timer and the tryClose timer.
m_process->stopResponsivenessTimer(); m_process->stopResponsivenessTimer();
@@ -6937,6 +7027,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) @@ -6924,6 +7014,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled)
if (auto* automationSession = process().processPool().automationSession()) if (auto* automationSession = process().processPool().automationSession())
automationSession->mouseEventsFlushedForPage(*this); automationSession->mouseEventsFlushedForPage(*this);
didFinishProcessingAllPendingMouseEvents(); didFinishProcessingAllPendingMouseEvents();
@ -12065,7 +12065,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
} }
break; break;
@@ -6963,7 +7054,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) @@ -6950,7 +7041,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled)
case WebEvent::RawKeyDown: case WebEvent::RawKeyDown:
case WebEvent::Char: { case WebEvent::Char: {
LOG(KeyHandling, "WebPageProxy::didReceiveEvent: %s (queue empty %d)", webKeyboardEventTypeString(type), m_keyEventQueue.isEmpty()); LOG(KeyHandling, "WebPageProxy::didReceiveEvent: %s (queue empty %d)", webKeyboardEventTypeString(type), m_keyEventQueue.isEmpty());
@ -12073,7 +12073,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
MESSAGE_CHECK(m_process, !m_keyEventQueue.isEmpty()); MESSAGE_CHECK(m_process, !m_keyEventQueue.isEmpty());
NativeWebKeyboardEvent event = m_keyEventQueue.takeFirst(); NativeWebKeyboardEvent event = m_keyEventQueue.takeFirst();
@@ -6983,7 +7073,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) @@ -6970,7 +7060,6 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled)
// The call to doneWithKeyEvent may close this WebPage. // The call to doneWithKeyEvent may close this WebPage.
// Protect against this being destroyed. // Protect against this being destroyed.
Ref<WebPageProxy> protect(*this); Ref<WebPageProxy> protect(*this);
@ -12081,7 +12081,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
pageClient().doneWithKeyEvent(event, handled); pageClient().doneWithKeyEvent(event, handled);
if (!handled) if (!handled)
m_uiClient->didNotHandleKeyEvent(this, event); m_uiClient->didNotHandleKeyEvent(this, event);
@@ -6992,6 +7081,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled) @@ -6979,6 +7068,7 @@ void WebPageProxy::didReceiveEvent(uint32_t opaqueType, bool handled)
if (!canProcessMoreKeyEvents) { if (!canProcessMoreKeyEvents) {
if (auto* automationSession = process().processPool().automationSession()) if (auto* automationSession = process().processPool().automationSession())
automationSession->keyboardEventsFlushedForPage(*this); automationSession->keyboardEventsFlushedForPage(*this);
@ -12089,7 +12089,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
} }
break; break;
} }
@@ -7437,8 +7527,10 @@ static bool shouldReloadAfterProcessTermination(ProcessTerminationReason reason) @@ -7410,8 +7500,10 @@ static bool shouldReloadAfterProcessTermination(ProcessTerminationReason reason)
void WebPageProxy::dispatchProcessDidTerminate(ProcessTerminationReason reason) void WebPageProxy::dispatchProcessDidTerminate(ProcessTerminationReason reason)
{ {
RELEASE_LOG_ERROR_IF_ALLOWED(Loading, "dispatchProcessDidTerminate: reason = %d", reason); RELEASE_LOG_ERROR_IF_ALLOWED(Loading, "dispatchProcessDidTerminate: reason = %d", reason);
@ -12101,7 +12101,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
if (m_loaderClient) if (m_loaderClient)
handledByClient = reason != ProcessTerminationReason::RequestedByClient && m_loaderClient->processDidCrash(*this); handledByClient = reason != ProcessTerminationReason::RequestedByClient && m_loaderClient->processDidCrash(*this);
else else
@@ -7705,6 +7797,7 @@ void WebPageProxy::resetStateAfterProcessExited(ProcessTerminationReason termina @@ -7678,6 +7770,7 @@ void WebPageProxy::resetStateAfterProcessExited(ProcessTerminationReason termina
WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy& process, DrawingAreaProxy& drawingArea, RefPtr<API::WebsitePolicies>&& websitePolicies) WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy& process, DrawingAreaProxy& drawingArea, RefPtr<API::WebsitePolicies>&& websitePolicies)
{ {
@ -12109,7 +12109,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
WebPageCreationParameters parameters; WebPageCreationParameters parameters;
parameters.processDisplayName = configuration().processDisplayName(); parameters.processDisplayName = configuration().processDisplayName();
@@ -7858,6 +7951,8 @@ WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy& proc @@ -7831,6 +7924,8 @@ WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy& proc
parameters.limitsNavigationsToAppBoundDomains = m_limitsNavigationsToAppBoundDomains; parameters.limitsNavigationsToAppBoundDomains = m_limitsNavigationsToAppBoundDomains;
parameters.shouldRelaxThirdPartyCookieBlocking = m_configuration->shouldRelaxThirdPartyCookieBlocking(); parameters.shouldRelaxThirdPartyCookieBlocking = m_configuration->shouldRelaxThirdPartyCookieBlocking();
@ -12118,7 +12118,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
#if PLATFORM(GTK) #if PLATFORM(GTK)
parameters.themeName = pageClient().themeName(); parameters.themeName = pageClient().themeName();
#endif #endif
@@ -7929,6 +8024,14 @@ void WebPageProxy::gamepadActivity(const Vector<GamepadData>& gamepadDatas, Even @@ -7902,6 +7997,14 @@ void WebPageProxy::gamepadActivity(const Vector<GamepadData>& gamepadDatas, Even
void WebPageProxy::didReceiveAuthenticationChallengeProxy(Ref<AuthenticationChallengeProxy>&& authenticationChallenge, NegotiatedLegacyTLS negotiatedLegacyTLS) void WebPageProxy::didReceiveAuthenticationChallengeProxy(Ref<AuthenticationChallengeProxy>&& authenticationChallenge, NegotiatedLegacyTLS negotiatedLegacyTLS)
{ {
@ -12133,7 +12133,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
if (negotiatedLegacyTLS == NegotiatedLegacyTLS::Yes) { if (negotiatedLegacyTLS == NegotiatedLegacyTLS::Yes) {
m_navigationClient->shouldAllowLegacyTLS(*this, authenticationChallenge.get(), [this, protectedThis = makeRef(*this), authenticationChallenge] (bool shouldAllowLegacyTLS) { m_navigationClient->shouldAllowLegacyTLS(*this, authenticationChallenge.get(), [this, protectedThis = makeRef(*this), authenticationChallenge] (bool shouldAllowLegacyTLS) {
if (shouldAllowLegacyTLS) if (shouldAllowLegacyTLS)
@@ -8014,7 +8117,8 @@ void WebPageProxy::requestGeolocationPermissionForFrame(GeolocationIdentifier ge @@ -7987,7 +8090,8 @@ void WebPageProxy::requestGeolocationPermissionForFrame(GeolocationIdentifier ge
MESSAGE_CHECK(m_process, frame); MESSAGE_CHECK(m_process, frame);
// FIXME: Geolocation should probably be using toString() as its string representation instead of databaseIdentifier(). // FIXME: Geolocation should probably be using toString() as its string representation instead of databaseIdentifier().
@ -12143,7 +12143,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
auto request = m_geolocationPermissionRequestManager.createRequest(geolocationID); auto request = m_geolocationPermissionRequestManager.createRequest(geolocationID);
Function<void(bool)> completionHandler = [request = WTFMove(request)](bool allowed) { Function<void(bool)> completionHandler = [request = WTFMove(request)](bool allowed) {
if (allowed) if (allowed)
@@ -8023,6 +8127,14 @@ void WebPageProxy::requestGeolocationPermissionForFrame(GeolocationIdentifier ge @@ -7996,6 +8100,14 @@ void WebPageProxy::requestGeolocationPermissionForFrame(GeolocationIdentifier ge
request->deny(); request->deny();
}; };
@ -12159,7 +12159,7 @@ index 5e6ad9b13e99b6614c3ce42dfc5e3d3205693d99..c68f0e5f766f233112c4625e882e6b1c
// and make it one UIClient call that calls the completionHandler with false // and make it one UIClient call that calls the completionHandler with false
// if there is no delegate instead of returning the completionHandler // if there is no delegate instead of returning the completionHandler
diff --git a/Source/WebKit/UIProcess/WebPageProxy.h b/Source/WebKit/UIProcess/WebPageProxy.h diff --git a/Source/WebKit/UIProcess/WebPageProxy.h b/Source/WebKit/UIProcess/WebPageProxy.h
index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958e8cc8d7c 100644 index 7a26d170fa5052fd23ba6e71018be85e51c78c85..d092b02de6097e1aa0c01f25a259564b57284bed 100644
--- a/Source/WebKit/UIProcess/WebPageProxy.h --- a/Source/WebKit/UIProcess/WebPageProxy.h
+++ b/Source/WebKit/UIProcess/WebPageProxy.h +++ b/Source/WebKit/UIProcess/WebPageProxy.h
@@ -37,6 +37,7 @@ @@ -37,6 +37,7 @@
@ -12170,7 +12170,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
#include "LayerTreeContext.h" #include "LayerTreeContext.h"
#include "MessageSender.h" #include "MessageSender.h"
#include "NotificationPermissionRequestManagerProxy.h" #include "NotificationPermissionRequestManagerProxy.h"
@@ -506,6 +507,8 @@ public: @@ -505,6 +506,8 @@ public:
void setControlledByAutomation(bool); void setControlledByAutomation(bool);
WebPageInspectorController& inspectorController() { return *m_inspectorController; } WebPageInspectorController& inspectorController() { return *m_inspectorController; }
@ -12179,7 +12179,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
#if PLATFORM(IOS_FAMILY) #if PLATFORM(IOS_FAMILY)
void showInspectorIndication(); void showInspectorIndication();
@@ -580,6 +583,11 @@ public: @@ -579,6 +582,11 @@ public:
void setPageLoadStateObserver(std::unique_ptr<PageLoadState::Observer>&&); void setPageLoadStateObserver(std::unique_ptr<PageLoadState::Observer>&&);
@ -12191,7 +12191,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
void initializeWebPage(); void initializeWebPage();
void setDrawingArea(std::unique_ptr<DrawingAreaProxy>&&); void setDrawingArea(std::unique_ptr<DrawingAreaProxy>&&);
@@ -605,6 +613,7 @@ public: @@ -604,6 +612,7 @@ public:
void closePage(); void closePage();
void addPlatformLoadParameters(WebProcessProxy&, LoadParameters&); void addPlatformLoadParameters(WebProcessProxy&, LoadParameters&);
@ -12199,7 +12199,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
RefPtr<API::Navigation> loadRequest(WebCore::ResourceRequest&&, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldAllowExternalSchemes, API::Object* userData = nullptr); RefPtr<API::Navigation> loadRequest(WebCore::ResourceRequest&&, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldAllowExternalSchemes, API::Object* userData = nullptr);
RefPtr<API::Navigation> loadFile(const String& fileURL, const String& resourceDirectoryURL, API::Object* userData = nullptr); RefPtr<API::Navigation> loadFile(const String& fileURL, const String& resourceDirectoryURL, API::Object* userData = nullptr);
RefPtr<API::Navigation> loadData(const IPC::DataReference&, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData = nullptr, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldNotAllow); RefPtr<API::Navigation> loadData(const IPC::DataReference&, const String& MIMEType, const String& encoding, const String& baseURL, API::Object* userData = nullptr, WebCore::ShouldOpenExternalURLsPolicy = WebCore::ShouldOpenExternalURLsPolicy::ShouldNotAllow);
@@ -1094,6 +1103,7 @@ public: @@ -1093,6 +1102,7 @@ public:
#endif #endif
void pageScaleFactorDidChange(double); void pageScaleFactorDidChange(double);
@ -12207,7 +12207,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
void pluginScaleFactorDidChange(double); void pluginScaleFactorDidChange(double);
void pluginZoomFactorDidChange(double); void pluginZoomFactorDidChange(double);
@@ -1414,6 +1424,8 @@ public: @@ -1412,6 +1422,8 @@ public:
#if PLATFORM(COCOA) || PLATFORM(GTK) #if PLATFORM(COCOA) || PLATFORM(GTK)
RefPtr<ViewSnapshot> takeViewSnapshot(Optional<WebCore::IntRect>&&); RefPtr<ViewSnapshot> takeViewSnapshot(Optional<WebCore::IntRect>&&);
@ -12216,7 +12216,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
#endif #endif
#if ENABLE(WEB_CRYPTO) #if ENABLE(WEB_CRYPTO)
@@ -2401,6 +2413,7 @@ private: @@ -2398,6 +2410,7 @@ private:
String m_overrideContentSecurityPolicy; String m_overrideContentSecurityPolicy;
RefPtr<WebInspectorProxy> m_inspector; RefPtr<WebInspectorProxy> m_inspector;
@ -12224,7 +12224,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
#if ENABLE(FULLSCREEN_API) #if ENABLE(FULLSCREEN_API)
std::unique_ptr<WebFullScreenManagerProxy> m_fullScreenManager; std::unique_ptr<WebFullScreenManagerProxy> m_fullScreenManager;
@@ -2829,6 +2842,9 @@ private: @@ -2826,6 +2839,9 @@ private:
RefPtr<API::Object> messageBody; RefPtr<API::Object> messageBody;
}; };
Vector<InjectedBundleMessage> m_pendingInjectedBundleMessages; Vector<InjectedBundleMessage> m_pendingInjectedBundleMessages;
@ -12235,7 +12235,7 @@ index 8c1ae26dd0db65d19f97b4a65dae6054e9a9de07..718bac0baffbd7c93631e82573c5a958
#if PLATFORM(IOS_FAMILY) && ENABLE(DEVICE_ORIENTATION) #if PLATFORM(IOS_FAMILY) && ENABLE(DEVICE_ORIENTATION)
std::unique_ptr<WebDeviceOrientationUpdateProviderProxy> m_webDeviceOrientationUpdateProviderProxy; std::unique_ptr<WebDeviceOrientationUpdateProviderProxy> m_webDeviceOrientationUpdateProviderProxy;
diff --git a/Source/WebKit/UIProcess/WebPageProxy.messages.in b/Source/WebKit/UIProcess/WebPageProxy.messages.in diff --git a/Source/WebKit/UIProcess/WebPageProxy.messages.in b/Source/WebKit/UIProcess/WebPageProxy.messages.in
index d507943d2839025ad019571d59421c9c470ede52..46d5ceda812498c4094276e59722612029b9edce 100644 index 2bfedf7b2cbd84a2a5f72ffea62cd5415871962d..01a6868d03ec9fdadb2a2472d49484b701501fd8 100644
--- a/Source/WebKit/UIProcess/WebPageProxy.messages.in --- a/Source/WebKit/UIProcess/WebPageProxy.messages.in
+++ b/Source/WebKit/UIProcess/WebPageProxy.messages.in +++ b/Source/WebKit/UIProcess/WebPageProxy.messages.in
@@ -29,6 +29,7 @@ messages -> WebPageProxy { @@ -29,6 +29,7 @@ messages -> WebPageProxy {
@ -12246,8 +12246,8 @@ index d507943d2839025ad019571d59421c9c470ede52..46d5ceda812498c4094276e597226120
#if ENABLE(NETSCAPE_PLUGIN_API) #if ENABLE(NETSCAPE_PLUGIN_API)
UnavailablePluginButtonClicked(uint32_t pluginUnavailabilityReason, String mimeType, String pluginURLString, String pluginspageAttributeURLString, String frameURLString, String pageURLString) UnavailablePluginButtonClicked(uint32_t pluginUnavailabilityReason, String mimeType, String pluginURLString, String pluginspageAttributeURLString, String frameURLString, String pageURLString)
@@ -204,6 +205,7 @@ messages -> WebPageProxy { @@ -202,6 +203,7 @@ messages -> WebPageProxy {
FindStringCallback(bool found, WebKit::CallbackID callbackID) #endif
PageScaleFactorDidChange(double scaleFactor) PageScaleFactorDidChange(double scaleFactor)
+ ViewScaleFactorDidChange(double scaleFactor) + ViewScaleFactorDidChange(double scaleFactor)
@ -14538,7 +14538,7 @@ index f127d64d005ab7b93875591b94a5899205e91579..df0de26e4dc449a0fbf93e7037444df4
uint64_t m_navigationID; uint64_t m_navigationID;
}; };
diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.cpp b/Source/WebKit/WebProcess/WebPage/WebPage.cpp diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.cpp b/Source/WebKit/WebProcess/WebPage/WebPage.cpp
index 839806bf7a7a860a73ad62760175c4259b0c33d5..b2e51588c098714d53e5710c3dea9ed906ef0407 100644 index b7124e8ed304ab7b2009502d6ac287677aeb1be2..743af97f717701d822ab03666b31e67792a43b98 100644
--- a/Source/WebKit/WebProcess/WebPage/WebPage.cpp --- a/Source/WebKit/WebProcess/WebPage/WebPage.cpp
+++ b/Source/WebKit/WebProcess/WebPage/WebPage.cpp +++ b/Source/WebKit/WebProcess/WebPage/WebPage.cpp
@@ -776,6 +776,9 @@ WebPage::WebPage(PageIdentifier pageID, WebPageCreationParameters&& parameters) @@ -776,6 +776,9 @@ WebPage::WebPage(PageIdentifier pageID, WebPageCreationParameters&& parameters)
@ -14687,7 +14687,7 @@ index 839806bf7a7a860a73ad62760175c4259b0c33d5..b2e51588c098714d53e5710c3dea9ed9
return documentLoader; return documentLoader;
diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.h b/Source/WebKit/WebProcess/WebPage/WebPage.h diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.h b/Source/WebKit/WebProcess/WebPage/WebPage.h
index 9e4fcc495f6559c69f2d03d2f048e563944cfeb2..c22c37addfc518dd3dfcfdabb3238b64a78f1563 100644 index 059667e3889abac2f98e2c83ae73685b31060df9..afd1bf7ad0edcdf1cf03dd09bd18f0c15f9b2a37 100644
--- a/Source/WebKit/WebProcess/WebPage/WebPage.h --- a/Source/WebKit/WebProcess/WebPage/WebPage.h
+++ b/Source/WebKit/WebProcess/WebPage/WebPage.h +++ b/Source/WebKit/WebProcess/WebPage/WebPage.h
@@ -1168,6 +1168,7 @@ public: @@ -1168,6 +1168,7 @@ public:
@ -14707,7 +14707,7 @@ index 9e4fcc495f6559c69f2d03d2f048e563944cfeb2..c22c37addfc518dd3dfcfdabb3238b64
NO_RETURN void loadRequestWaitingForProcessLaunch(LoadParameters&&, URL&&, WebPageProxyIdentifier, bool); NO_RETURN void loadRequestWaitingForProcessLaunch(LoadParameters&&, URL&&, WebPageProxyIdentifier, bool);
void loadData(LoadParameters&&); void loadData(LoadParameters&&);
@@ -1592,9 +1594,7 @@ private: @@ -1592,9 +1594,7 @@ private:
void countStringMatches(const String&, uint32_t findOptions, uint32_t maxMatchCount); void countStringMatches(const String&, OptionSet<FindOptions>, uint32_t maxMatchCount);
void replaceMatches(const Vector<uint32_t>& matchIndices, const String& replacementText, bool selectionOnly, CallbackID); void replaceMatches(const Vector<uint32_t>& matchIndices, const String& replacementText, bool selectionOnly, CallbackID);
-#if USE(COORDINATED_GRAPHICS) -#if USE(COORDINATED_GRAPHICS)
@ -14725,7 +14725,7 @@ index 9e4fcc495f6559c69f2d03d2f048e563944cfeb2..c22c37addfc518dd3dfcfdabb3238b64
bool m_mainFrameProgressCompleted { false }; bool m_mainFrameProgressCompleted { false };
diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in diff --git a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
index a1dc88417d900b1a64376d8442eac315452f50bf..ec07edf6598a8bf1b3287cb9c5577c6f48a8cd9a 100644 index 72f03861648386fbc8415085c153cfee752676c6..5eaad778d8c9a4c2f66932cd030fa237511c75d6 100644
--- a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in --- a/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
+++ b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in +++ b/Source/WebKit/WebProcess/WebPage/WebPage.messages.in
@@ -133,6 +133,7 @@ GenerateSyntheticEditingCommand(enum:uint8_t WebKit::SyntheticEditingCommandType @@ -133,6 +133,7 @@ GenerateSyntheticEditingCommand(enum:uint8_t WebKit::SyntheticEditingCommandType
@ -14832,12 +14832,12 @@ index 0000000000000000000000000000000000000000..dd6a53e2d57318489b7e49dd7373706d
+ LIBVPX_LIBRARIES + LIBVPX_LIBRARIES
+) +)
diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake
index cd8934b2003e843968f3d4afd3969a3f5e2a20b7..0f150f8ccdb7b7a1c6dbb334c41f03a71e40e147 100644 index 14a62a9050cf6733699f4cafaf50ff0107aa4ada..2c876b02251869a992281d8f21c6a1d410805570 100644
--- a/Source/cmake/OptionsGTK.cmake --- a/Source/cmake/OptionsGTK.cmake
+++ b/Source/cmake/OptionsGTK.cmake +++ b/Source/cmake/OptionsGTK.cmake
@@ -6,6 +6,8 @@ WEBKIT_OPTION_DEFINE(USE_GTK4 "Whether to enable usage of GTK4 instead of GTK3." @@ -6,6 +6,8 @@ WEBKIT_OPTION_DEFINE(USE_GTK4 "Whether to enable usage of GTK4 instead of GTK3."
SET_PROJECT_VERSION(2 29 2) SET_PROJECT_VERSION(2 29 3)
+set(ENABLE_WEBKIT_LEGACY OFF) +set(ENABLE_WEBKIT_LEGACY OFF)
+ +
@ -15441,7 +15441,7 @@ index 0500097b2d4935909840b278a476000d0287a20c..572d483fcfbee9c71c8aa87e24d9c28c
# WebInspectorUI must come after JavaScriptCore and WebCore but before WebKit and WebKit2 # WebInspectorUI must come after JavaScriptCore and WebCore but before WebKit and WebKit2
my $webKitIndex = first { $projects[$_] eq "Source/WebKitLegacy" } 0..$#projects; my $webKitIndex = first { $projects[$_] eq "Source/WebKitLegacy" } 0..$#projects;
diff --git a/Tools/WebKitTestRunner/TestController.cpp b/Tools/WebKitTestRunner/TestController.cpp diff --git a/Tools/WebKitTestRunner/TestController.cpp b/Tools/WebKitTestRunner/TestController.cpp
index 6804c992656a24696cc57cd0fd94c6423ad0b06e..23a7e509a089a3ae1278a3620878e3223ddf6aa9 100644 index 13be1e8f97054b39a05d1705764ab484b4be38bf..e1cf2d0dcd5a64cec828f4701675f9c61895d07a 100644
--- a/Tools/WebKitTestRunner/TestController.cpp --- a/Tools/WebKitTestRunner/TestController.cpp
+++ b/Tools/WebKitTestRunner/TestController.cpp +++ b/Tools/WebKitTestRunner/TestController.cpp
@@ -730,7 +730,8 @@ void TestController::createWebViewWithOptions(const TestOptions& options) @@ -730,7 +730,8 @@ void TestController::createWebViewWithOptions(const TestOptions& options)

View file

@ -52,7 +52,11 @@ function runLinux() {
exit 1 exit 1
fi fi
WEBKIT_FORCE_COMPLEX_TEXT="1" GIO_MODULE_DIR="$GIO_DIR" LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LD_PATH" WEBKIT_INJECTED_BUNDLE_PATH="$BUNDLE_DIR" "$MINIBROWSER" "$@" if [[ -d "$GIO_DIR" ]]; then
export GIO_EXTRA_MODULES="$GIO_DIR"
fi
WEBKIT_FORCE_COMPLEX_TEXT="1" LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LD_PATH" WEBKIT_INJECTED_BUNDLE_PATH="$BUNDLE_DIR" "$MINIBROWSER" "$@"
} }
SCRIPT_PATH="$(cd "$(dirname "$0")" ; pwd -P)" SCRIPT_PATH="$(cd "$(dirname "$0")" ; pwd -P)"