Title: [256396] trunk/Source/WebKit
Revision
256396
Author
cdu...@apple.com
Date
2020-02-11 16:31:22 -0800 (Tue, 11 Feb 2020)

Log Message

Unreviewed, revert r255662 as it seems to cause blank views in SVC.
https://bugs.webkit.org/show_bug.cgi?id=207144
<rdar://problem/59334011>

* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::initializeNewWebProcess):
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::initializeWebProcess):
* WebProcess/WebProcess.h:
* WebProcess/WebProcess.messages.in:

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (256395 => 256396)


--- trunk/Source/WebKit/ChangeLog	2020-02-12 00:13:55 UTC (rev 256395)
+++ trunk/Source/WebKit/ChangeLog	2020-02-12 00:31:22 UTC (rev 256396)
@@ -1,3 +1,16 @@
+2020-02-11  Chris Dumez  <cdu...@apple.com>
+
+        Unreviewed, revert r255662 as it seems to cause blank views in SVC.
+        https://bugs.webkit.org/show_bug.cgi?id=207144
+        <rdar://problem/59334011>
+
+        * UIProcess/WebProcessPool.cpp:
+        (WebKit::WebProcessPool::initializeNewWebProcess):
+        * WebProcess/WebProcess.cpp:
+        (WebKit::WebProcess::initializeWebProcess):
+        * WebProcess/WebProcess.h:
+        * WebProcess/WebProcess.messages.in:
+
 2020-02-11  Commit Queue  <commit-qu...@webkit.org>
 
         Unreviewed, rolling out r256314.

Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (256395 => 256396)


--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-02-12 00:13:55 UTC (rev 256395)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2020-02-12 00:31:22 UTC (rev 256396)
@@ -961,6 +961,12 @@
 void WebProcessPool::initializeNewWebProcess(WebProcessProxy& process, WebsiteDataStore* websiteDataStore, WebProcessProxy::IsPrewarmed isPrewarmed)
 {
     auto initializationActivity = process.throttler().backgroundActivity("WebProcess initialization"_s);
+    auto scopeExit = makeScopeExit([&process, initializationActivity = WTFMove(initializationActivity)]() mutable {
+        // Round-trip to the Web Content process before releasing the
+        // initialization activity, so that we're sure that all
+        // messages sent from this function have been handled.
+        process.isResponsive([initializationActivity = WTFMove(initializationActivity)] (bool) { });
+    });
 
     ensureNetworkProcess();
 
@@ -1045,8 +1051,7 @@
     if (websiteDataStore)
         parameters.websiteDataStoreParameters = webProcessDataStoreParameters(process, *websiteDataStore);
 
-    process.sendWithAsyncReply(Messages::WebProcess::InitializeWebProcess(parameters), [protectedThis = makeRef(*this), protectedProcess = makeRef(process), initializationActivity = WTFMove(initializationActivity)] { });
-
+    process.send(Messages::WebProcess::InitializeWebProcess(parameters), 0);
 #if PLATFORM(COCOA)
     process.send(Messages::WebProcess::SetQOS(webProcessLatencyQOS(), webProcessThroughputQOS()), 0);
 #endif

Modified: trunk/Source/WebKit/WebProcess/WebProcess.cpp (256395 => 256396)


--- trunk/Source/WebKit/WebProcess/WebProcess.cpp	2020-02-12 00:13:55 UTC (rev 256395)
+++ trunk/Source/WebKit/WebProcess/WebProcess.cpp	2020-02-12 00:31:22 UTC (rev 256396)
@@ -294,7 +294,7 @@
 #endif
 }
 
-void WebProcess::initializeWebProcess(WebProcessCreationParameters&& parameters, CompletionHandler<void()>&& completionHandler)
+void WebProcess::initializeWebProcess(WebProcessCreationParameters&& parameters)
 {    
     TraceScope traceScope(InitializeWebProcessStart, InitializeWebProcessEnd);
 
@@ -459,7 +459,6 @@
 #endif
 
     RELEASE_LOG_IF_ALLOWED(Process, "initializeWebProcess: Presenting process = %d", WebCore::presentingApplicationPID());
-    completionHandler();
 }
 
 void WebProcess::setWebsiteDataStoreParameters(WebProcessDataStoreParameters&& parameters)

Modified: trunk/Source/WebKit/WebProcess/WebProcess.h (256395 => 256396)


--- trunk/Source/WebKit/WebProcess/WebProcess.h	2020-02-12 00:13:55 UTC (rev 256395)
+++ trunk/Source/WebKit/WebProcess/WebProcess.h	2020-02-12 00:31:22 UTC (rev 256396)
@@ -331,7 +331,7 @@
     WebProcess();
     ~WebProcess();
 
-    void initializeWebProcess(WebProcessCreationParameters&&, CompletionHandler<void()>&&);
+    void initializeWebProcess(WebProcessCreationParameters&&);
     void platformInitializeWebProcess(WebProcessCreationParameters&);
     void setWebsiteDataStoreParameters(WebProcessDataStoreParameters&&);
     void platformSetWebsiteDataStoreParameters(WebProcessDataStoreParameters&&);

Modified: trunk/Source/WebKit/WebProcess/WebProcess.messages.in (256395 => 256396)


--- trunk/Source/WebKit/WebProcess/WebProcess.messages.in	2020-02-12 00:13:55 UTC (rev 256395)
+++ trunk/Source/WebKit/WebProcess/WebProcess.messages.in	2020-02-12 00:31:22 UTC (rev 256396)
@@ -21,7 +21,7 @@
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 messages -> WebProcess LegacyReceiver NotRefCounted {
-    InitializeWebProcess(struct WebKit::WebProcessCreationParameters processCreationParameters) -> () Async
+    InitializeWebProcess(struct WebKit::WebProcessCreationParameters processCreationParameters)
     SetWebsiteDataStoreParameters(struct WebKit::WebProcessDataStoreParameters parameters)
 
     # Create a new page.
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to