Bug 203243

Summary: WebSWServerToContextConnection should not assert when failing loads at destruction time
Product: WebKit Reporter: youenn fablet <youennf>
Component: Service WorkersAssignee: youenn fablet <youennf>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, beidson, cdumez, commit-queue, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description youenn fablet 2019-10-22 04:14:34 PDT
WebSWServerToContextConnection should not assert when failing loads at destruction time
Comment 1 youenn fablet 2019-10-22 04:18:02 PDT
See https://build.webkit.org/results/Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/r251183%20(9971)/imported/w3c/web-platform-tests/service-workers/service-worker/navigation-redirect.https-crash-log.txt
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.JavaScriptCore      	0x000000010edfee70 WTFCrash + 16 (Assertions.cpp:305)
1   com.apple.WebKit              	0x0000000105ba578b WTFCrashWithInfo(int, char const*, char const*, int) + 27
2   com.apple.WebKit              	0x00000001073346f3 WebKit::WebSWServerToContextConnection::unregisterFetch(WebKit::ServiceWorkerFetchTask&) + 147 (WebSWServerToContextConnection.cpp:171)
3   com.apple.WebKit              	0x0000000105f1201c WebKit::ServiceWorkerFetchTask::~ServiceWorkerFetchTask() + 76 (ServiceWorkerFetchTask.cpp:66)
4   com.apple.WebKit              	0x0000000105f121b5 WebKit::ServiceWorkerFetchTask::~ServiceWorkerFetchTask() + 21 (ServiceWorkerFetchTask.cpp:66)
5   com.apple.WebKit              	0x0000000105fecffd WebKit::NetworkResourceLoader::~NetworkResourceLoader() + 941 (NetworkResourceLoader.cpp:133)
6   com.apple.WebKit              	0x0000000105fed875 WebKit::NetworkResourceLoader::~NetworkResourceLoader() + 21 (NetworkResourceLoader.cpp:133)
7   com.apple.WebKit              	0x0000000105fed8d9 WebKit::NetworkResourceLoader::~NetworkResourceLoader() + 25 (NetworkResourceLoader.cpp:126)
8   com.apple.WebKit              	0x0000000105f78aff WTF::RefCounted<WebKit::NetworkResourceLoader, std::__1::default_delete<WebKit::NetworkResourceLoader> >::deref() const + 95 (RefCounted.h:190)
9   com.apple.WebKit              	0x0000000105f78a73 WTF::Ref<WebKit::NetworkResourceLoader, WTF::DumbPtrTraits<WebKit::NetworkResourceLoader> >::~Ref() + 51 (Ref.h:61)
10  com.apple.WebKit              	0x0000000105f55355 WTF::Ref<WebKit::NetworkResourceLoader, WTF::DumbPtrTraits<WebKit::NetworkResourceLoader> >::~Ref() + 21 (Ref.h:61)
11  com.apple.WebKit              	0x000000010608e2fb WebKit::NetworkSession::removeKeptAliveLoad(WebKit::NetworkResourceLoader&) + 347 (NetworkSession.cpp:275)
12  com.apple.WebKit              	0x0000000105fe7221 WebKit::NetworkProcess::removeKeptAliveLoad(WebKit::NetworkResourceLoader&) + 81 (NetworkProcess.cpp:2583)
13  com.apple.WebKit              	0x0000000105f54fae WebKit::NetworkConnectionToWebProcess::didCleanupResourceLoader(WebKit::NetworkResourceLoader&) + 254 (NetworkConnectionToWebProcess.cpp:132)
14  com.apple.WebKit              	0x0000000105ff30dc WebKit::NetworkResourceLoader::cleanup(WebKit::NetworkResourceLoader::LoadResult) + 492 (NetworkResourceLoader.cpp:352)
15  com.apple.WebKit              	0x0000000105ff2ca1 WebKit::NetworkResourceLoader::didFailLoading(WebCore::ResourceError const&) + 1489 (NetworkResourceLoader.cpp:631)
16  com.apple.WebKit              	0x0000000105f1345f WebKit::ServiceWorkerFetchTask::didFail(WebCore::ResourceError const&) + 319 (ServiceWorkerFetchTask.cpp:145)
17  com.apple.WebKit              	0x000000010733323d WebKit::ServiceWorkerFetchTask::fail(WebCore::ResourceError const&) + 29 (ServiceWorkerFetchTask.h:66)
18  com.apple.WebKit              	0x0000000107332ea9 WebKit::WebSWServerToContextConnection::~WebSWServerToContextConnection() + 425 (WebSWServerToContextConnection.cpp:58)
19  com.apple.WebKit              	0x0000000107333435 WebKit::WebSWServerToContextConnection::~WebSWServerToContextConnection() + 21 (WebSWServerToContextConnection.cpp:62)
20  com.apple.WebKit              	0x0000000107333499 WebKit::WebSWServerToContextConnection::~WebSWServerToContextConnection() + 25 (WebSWServerToContextConnection.cpp:55)
21  com.apple.WebKit              	0x0000000105f56982 WebKit::NetworkConnectionToWebProcess::didClose(IPC::Connection&) + 306 (NetworkConnectionToWebProcess.cpp:289)
22  com.apple.WebKit              	0x0000000105c2e076 IPC::Connection::connectionDidClose()::$_6::operator()() + 246 (Connection.cpp:816)
Comment 2 youenn fablet 2019-10-22 04:20:59 PDT
Created attachment 381537 [details]
Patch
Comment 3 youenn fablet 2019-10-22 05:56:14 PDT
Comment on attachment 381537 [details]
Patch

iOS-wk2 failure is unrelated
Comment 4 WebKit Commit Bot 2019-10-22 08:55:40 PDT
Comment on attachment 381537 [details]
Patch

Clearing flags on attachment: 381537

Committed r251434: <https://trac.webkit.org/changeset/251434>
Comment 5 WebKit Commit Bot 2019-10-22 08:55:42 PDT
All reviewed patches have been landed.  Closing bug.
Comment 6 Radar WebKit Bug Importer 2019-10-22 08:56:16 PDT
<rdar://problem/56501449>