Title: [255438] trunk/Source/WebKit
- Revision
- 255438
- Author
- [email protected]
- Date
- 2020-01-30 10:54:46 -0800 (Thu, 30 Jan 2020)
Log Message
Disable Service Workers before terminating an unresponsive service worker process
https://bugs.webkit.org/show_bug.cgi?id=206994
Reviewed by Chris Dumez.
In case a process becomes unresponsive, we terminate it in case it is a service worker process.
In that case, we should make sure not to call the service worker process crash callback.
To do so, disable service workers before terminating the IPC connection.
* UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didBecomeUnresponsive):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (255437 => 255438)
--- trunk/Source/WebKit/ChangeLog 2020-01-30 18:07:10 UTC (rev 255437)
+++ trunk/Source/WebKit/ChangeLog 2020-01-30 18:54:46 UTC (rev 255438)
@@ -1,3 +1,17 @@
+2020-01-30 youenn fablet <[email protected]>
+
+ Disable Service Workers before terminating an unresponsive service worker process
+ https://bugs.webkit.org/show_bug.cgi?id=206994
+
+ Reviewed by Chris Dumez.
+
+ In case a process becomes unresponsive, we terminate it in case it is a service worker process.
+ In that case, we should make sure not to call the service worker process crash callback.
+ To do so, disable service workers before terminating the IPC connection.
+
+ * UIProcess/WebProcessProxy.cpp:
+ (WebKit::WebProcessProxy::didBecomeUnresponsive):
+
2020-01-30 Brent Fulgham <[email protected]>
[iOS] Remove report rule for 'com.apple.runningboard' from the Network and GPU process sandboxes
Modified: trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp (255437 => 255438)
--- trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp 2020-01-30 18:07:10 UTC (rev 255437)
+++ trunk/Source/WebKit/UIProcess/WebProcessProxy.cpp 2020-01-30 18:54:46 UTC (rev 255438)
@@ -836,6 +836,7 @@
// If the web process becomes unresponsive and only runs service workers, kill it ourselves since there are no native clients to do it.
if (isRunningServiceWorkers() && m_pageMap.isEmpty()) {
RELEASE_LOG_ERROR(PerformanceLogging, "%p - WebProcessProxy::didBecomeUnresponsive() Terminating service worker-only web process with pid %d because it is unresponsive", this, processIdentifier());
+ disableServiceWorkers();
terminate();
}
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes