[webkit-changes] [WebKit/WebKit] c41dfa: imported/w3c/web-platform-tests/service-workers/se...
Chris Dumez
noreply at github.com
Thu Jan 12 12:47:24 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c41dfa79a5859286d096783b4e996d97177f8056
https://github.com/WebKit/WebKit/commit/c41dfa79a5859286d096783b4e996d97177f8056
Author: Chris Dumez <cdumez at apple.com>
Date: 2023-01-12 (Thu, 12 Jan 2023)
Changed paths:
M Source/WebCore/workers/service/context/ServiceWorkerFetch.h
M Source/WebCore/workers/service/context/ServiceWorkerThreadProxy.cpp
M Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp
M Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.h
Log Message:
-----------
imported/w3c/web-platform-tests/service-workers/service-worker/navigation-sets-cookie.https.html is flaky crashing
https://bugs.webkit.org/show_bug.cgi?id=250486
rdar://104138207
Reviewed by Youenn Fablet.
Have WebServiceWorkerFetchTaskClient keep the preloadResponse as a CrossThreadData
instead of a ResourceResponse. m_preloadResponse gets initialized on the service
worker thread but the WebServiceWorkerFetchTaskClient object always gets destroyed
on the main thread. A ResourceResponse contains AtomStrings and thus cannot be
destroyed on another thread than the one it got constructed on.
* Source/WebCore/workers/service/context/ServiceWorkerFetch.h:
* Source/WebCore/workers/service/context/ServiceWorkerThreadProxy.cpp:
(WebCore::ServiceWorkerThreadProxy::navigationPreloadIsReady):
* Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
(WebKit::WebServiceWorkerFetchTaskClient::setFetchEvent):
(WebKit::WebServiceWorkerFetchTaskClient::navigationPreloadIsReady):
* Source/WebKit/WebProcess/Storage/WebServiceWorkerFetchTaskClient.h:
Canonical link: https://commits.webkit.org/258847@main
More information about the webkit-changes
mailing list