Title: [292869] trunk/Source/WebKit
- Revision
- 292869
- Author
- [email protected]
- Date
- 2022-04-14 08:48:20 -0700 (Thu, 14 Apr 2022)
Log Message
REGRESSION (249029@main): http/wpt/cache-storage/cache-storage-networkprocess-crash.html is a flaky CRASH with ASSERTION FAILED: m_pageMap.isEmpty()
https://bugs.webkit.org/show_bug.cgi?id=239095
<rdar://problem/91595784>
Reviewed by Chris Dumez.
We send the same IPC message to close WebSWContextManagerConnection from either network process or UIProcess.
To prevent closing twice the same connection, we exit early if the connection is closed.
Covered by existing tests.
* WebProcess/Storage/WebSWContextManagerConnection.cpp:
* WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp:
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (292868 => 292869)
--- trunk/Source/WebKit/ChangeLog 2022-04-14 15:44:26 UTC (rev 292868)
+++ trunk/Source/WebKit/ChangeLog 2022-04-14 15:48:20 UTC (rev 292869)
@@ -1,3 +1,19 @@
+2022-04-14 Youenn Fablet <[email protected]>
+
+ REGRESSION (249029@main): http/wpt/cache-storage/cache-storage-networkprocess-crash.html is a flaky CRASH with ASSERTION FAILED: m_pageMap.isEmpty()
+ https://bugs.webkit.org/show_bug.cgi?id=239095
+ <rdar://problem/91595784>
+
+ Reviewed by Chris Dumez.
+
+ We send the same IPC message to close WebSWContextManagerConnection from either network process or UIProcess.
+ To prevent closing twice the same connection, we exit early if the connection is closed.
+
+ Covered by existing tests.
+
+ * WebProcess/Storage/WebSWContextManagerConnection.cpp:
+ * WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp:
+
2022-04-14 Kate Cheney <[email protected]>
WKWebView: navigator.serviceWorker.register method fails for a new version of an already registered service worker.
Modified: trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.cpp (292868 => 292869)
--- trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.cpp 2022-04-14 15:44:26 UTC (rev 292868)
+++ trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.cpp 2022-04-14 15:48:20 UTC (rev 292869)
@@ -373,7 +373,10 @@
void WebSWContextManagerConnection::close()
{
- RELEASE_LOG(ServiceWorker, "Service worker process is requested to stop all service workers");
+ RELEASE_LOG(ServiceWorker, "Service worker process is requested to stop all service workers (already stopped = %d)", isClosed());
+ if (isClosed())
+ return;
+
setAsClosed();
m_connectionToNetworkProcess->send(Messages::NetworkConnectionToWebProcess::CloseSWContextConnection { }, 0);
Modified: trunk/Source/WebKit/WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp (292868 => 292869)
--- trunk/Source/WebKit/WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp 2022-04-14 15:44:26 UTC (rev 292868)
+++ trunk/Source/WebKit/WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp 2022-04-14 15:48:20 UTC (rev 292869)
@@ -118,7 +118,10 @@
void WebSharedWorkerContextManagerConnection::close()
{
- RELEASE_LOG(SharedWorker, "WebSharedWorkerContextManagerConnection::close: Shared worker process is requested to stop all shared workers");
+ RELEASE_LOG(SharedWorker, "WebSharedWorkerContextManagerConnection::close: Shared worker process is requested to stop all shared workers (already stopped = %d)", isClosed());
+ if (isClosed())
+ return;
+
setAsClosed();
m_connectionToNetworkProcess->send(Messages::NetworkConnectionToWebProcess::CloseSharedWorkerContextConnection { }, 0);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes