Title: [259640] trunk/Source/WebKit
Revision
259640
Author
you...@apple.com
Date
2020-04-07 09:09:43 -0700 (Tue, 07 Apr 2020)

Log Message

REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html
https://bugs.webkit.org/show_bug.cgi?id=209977

Reviewed by Chris Dumez.

* UIProcess/AuxiliaryProcessProxy.cpp:
(WebKit::AuxiliaryProcessProxy::~AuxiliaryProcessProxy):
In case AuxiliaryProcessProxy has some enqueued messages but process crashes on launch for instance,
we should call the completion handlers and fail.

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (259639 => 259640)


--- trunk/Source/WebKit/ChangeLog	2020-04-07 16:09:21 UTC (rev 259639)
+++ trunk/Source/WebKit/ChangeLog	2020-04-07 16:09:43 UTC (rev 259640)
@@ -1,3 +1,15 @@
+2020-04-07  Youenn Fablet  <you...@apple.com>
+
+        REGRESSION (r259383-259384): ASSERTION FAILED: 'Completion handler should always be called' seen with http/wpt/service-workers/service-worker-different-process.https.html
+        https://bugs.webkit.org/show_bug.cgi?id=209977
+
+        Reviewed by Chris Dumez.
+
+        * UIProcess/AuxiliaryProcessProxy.cpp:
+        (WebKit::AuxiliaryProcessProxy::~AuxiliaryProcessProxy):
+        In case AuxiliaryProcessProxy has some enqueued messages but process crashes on launch for instance,
+        we should call the completion handlers and fail.
+
 2020-04-07  David Kilzer  <ddkil...@apple.com>
 
         VisitedLinkStore.messages.in and VisitedLinkStore::addVisitedLinkHashFromPage() don't agree on type of `linkHash`

Modified: trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp (259639 => 259640)


--- trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp	2020-04-07 16:09:21 UTC (rev 259639)
+++ trunk/Source/WebKit/UIProcess/AuxiliaryProcessProxy.cpp	2020-04-07 16:09:43 UTC (rev 259640)
@@ -48,6 +48,11 @@
         m_processLauncher->invalidate();
         m_processLauncher = nullptr;
     }
+    auto pendingMessages = WTFMove(m_pendingMessages);
+    for (auto& pendingMessage : pendingMessages) {
+        if (pendingMessage.asyncReplyInfo)
+            pendingMessage.asyncReplyInfo->first(nullptr);
+    }
 }
 
 void AuxiliaryProcessProxy::getLaunchOptions(ProcessLauncher::LaunchOptions& launchOptions)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to