[GTK][WPE] Disable process warming
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 26 Mar 2019 10:16:46 +0000 (10:16 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 26 Mar 2019 10:16:46 +0000 (10:16 +0000)
https://bugs.webkit.org/show_bug.cgi?id=196208

Patch by Patrick Griffis <pgriffis@igalia.com> on 2019-03-26
Reviewed by Chris Dumez.

Fixes crash caused by r243384.

Process warming is incompatible with our launcher as it expects a valid
WebsiteDataStore at initialization time for sandbox permissions.

* UIProcess/glib/WebProcessPoolGLib.cpp:
(WebKit::WebProcessPool::platformInitialize):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@243490 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit/ChangeLog
Source/WebKit/UIProcess/glib/WebProcessPoolGLib.cpp

index 146491c..4f8c3b7 100644 (file)
@@ -1,3 +1,18 @@
+2019-03-26  Patrick Griffis  <pgriffis@igalia.com>
+
+        [GTK][WPE] Disable process warming
+        https://bugs.webkit.org/show_bug.cgi?id=196208
+
+        Reviewed by Chris Dumez.
+
+        Fixes crash caused by r243384.
+
+        Process warming is incompatible with our launcher as it expects a valid
+        WebsiteDataStore at initialization time for sandbox permissions.
+
+        * UIProcess/glib/WebProcessPoolGLib.cpp:
+        (WebKit::WebProcessPool::platformInitialize):
+
 2019-03-25  Alex Christensen  <achristensen@webkit.org>
 
         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
index 48b3ecf..b1e0965 100644 (file)
@@ -86,6 +86,13 @@ void WebProcessPool::platformInitialize()
 
     if (!memoryPressureMonitorDisabled())
         installMemoryPressureHandler();
+
+    // Process warming is incompatible with the fact our WebProcessProxy::platformGetLaunchOptions()
+    // requires a valid WebsiteDataStore at initialization time for our sandbox permissions.
+    // FIXME: With process warming disabled, the performance of
+    // process-swap-on-navigation is not going to be great. So this needs to be
+    // re-enabled when we enable PSON.
+    configuration().setIsAutomaticProcessWarmingEnabled(false);
 }
 
 void WebProcessPool::platformInitializeWebProcess(WebProcessCreationParameters& parameters)