Title: [286774] trunk/Source/WebKit
- Revision
- 286774
- Author
- [email protected]
- Date
- 2021-12-09 03:42:39 -0800 (Thu, 09 Dec 2021)
Log Message
Copy ServiceWorkerNavigationPreloader error when failing its ServiceWorkerFetchTask
https://bugs.webkit.org/show_bug.cgi?id=234002
Reviewed by Chris Dumez.
Covered by existing tests.
* NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
When failing a ServiceWorkerNavigationPreloader, we might delete it, so it is not safe to manage a reference to its error.
Instead copy the error.
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (286773 => 286774)
--- trunk/Source/WebKit/ChangeLog 2021-12-09 11:23:27 UTC (rev 286773)
+++ trunk/Source/WebKit/ChangeLog 2021-12-09 11:42:39 UTC (rev 286774)
@@ -1,3 +1,16 @@
+2021-12-09 Youenn Fablet <[email protected]>
+
+ Copy ServiceWorkerNavigationPreloader error when failing its ServiceWorkerFetchTask
+ https://bugs.webkit.org/show_bug.cgi?id=234002
+
+ Reviewed by Chris Dumez.
+
+ Covered by existing tests.
+
+ * NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
+ When failing a ServiceWorkerNavigationPreloader, we might delete it, so it is not safe to manage a reference to its error.
+ Instead copy the error.
+
2021-12-09 Myles C. Maxfield <[email protected]> and Don Olmstead <[email protected]>
Move TextCodec files from WebCore/platform/text to WebCore/PAL/text
Modified: trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp (286773 => 286774)
--- trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp 2021-12-09 11:23:27 UTC (rev 286773)
+++ trunk/Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp 2021-12-09 11:42:39 UTC (rev 286774)
@@ -364,7 +364,8 @@
return;
if (!m_preloader->error().isNull()) {
- didFail(m_preloader->error());
+ // Let's copy the error as calling didFail might destroy m_preloader.
+ didFail(ResourceError { m_preloader->error() });
return;
}
@@ -388,7 +389,8 @@
if (!weakThis)
return;
if (!m_preloader->error().isNull()) {
- didFail(m_preloader->error());
+ // Let's copy the error as calling didFail might destroy m_preloader.
+ didFail(ResourceError { m_preloader->error() });
return;
}
if (!chunk) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes