Bug 214008

Summary: Regression(r249303) Crash under NetworkLoad::NetworkLoad()
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: WebKit2Assignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, cgarcia, ews-watchlist, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 201314    
Attachments:
Description Flags
Patch none

Description Chris Dumez 2020-07-06 14:41:55 PDT
Regression(r249303) Crash under NetworkLoad::NetworkLoad():
Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed ↩:
0   WebKit                        	0x00000001a24f90a4 WebKit::NetworkLoad::NetworkLoad(WebKit::NetworkLoadClient&, WebCore::BlobRegistryImpl*, WebKit::NetworkLoadParameters&&, WebKit::NetworkSession&) + 60 (DumbPtrTraits.h:43)
1   WebKit                        	0x00000001a25c4e4c WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad(WebKit::NetworkCache::Cache&, WebKit::NetworkCache::GlobalFrameID const&, WebCore::ResourceRequest const&, std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >, WTF::Optional<WebKit::NavigatingToAppBoundDomain>, WTF::CompletionHandler<void (std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >)>&&) + 468 (NetworkLoad.cpp:66)
2   WebKit                        	0x00000001a25c4e4c WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad(WebKit::NetworkCache::Cache&, WebKit::NetworkCache::GlobalFrameID const&, WebCore::ResourceRequest const&, std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >, WTF::Optional<WebKit::NavigatingToAppBoundDomain>, WTF::CompletionHandler<void (std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >)>&&) + 468 (NetworkLoad.cpp:66)
3   WebKit                        	0x00000001a25c78ac WebKit::NetworkCache::SpeculativeLoadManager::revalidateSubresource(WebKit::NetworkCache::SubresourceInfo const&, std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >, WebKit::NetworkCache::GlobalFrameID const&, WTF::Optional<WebKit::NavigatingToAppBoundDomain>) + 872 (NetworkCacheSpeculativeLoad.cpp:51)
4   WebKit                        	0x00000001a25d0e48 WTF::Detail::CallableWrapper<WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry(WebKit::NetworkCache::Key const&, WebKit::NetworkCache::SubresourceInfo const&, WebKit::NetworkCache::GlobalFrameID const&, WTF::Optional<WebKit::NavigatingToAppBoundDomain>)::$_12, void, std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> > >::call(std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >) + 436 (NetworkCacheSpeculativeLoadManager.cpp:575)
5   WebKit                        	0x00000001a25c7388 WTF::Function<void (std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >)>::operator()(std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >) const + 52 (Function.h:84)
6   WebKit                        	0x00000001a25d0988 WTF::Detail::CallableWrapper<WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage(WebKit::NetworkCache::SubresourceInfo const&, WTF::Function<void (std::__1::unique_ptr<WebKit::NetworkCache::Entry, std::__1::default_delete<WebKit::NetworkCache::Entry> >)>&&)::$_9, bool, std::__1::unique_ptr<WebKit::NetworkCache::Storage::Record, std::__1::default_delete<WebKit::NetworkCache::Storage::Record> >, WebKit::NetworkCache::Storage::Timings const&>::call(std::__1::unique_ptr<WebKit::NetworkCache::Storage::Record, std::__1::default_delete<WebKit::NetworkCache::Storage::Record> >, WebKit::NetworkCache::Storage::Timings const&) + 320 (NetworkCacheSpeculativeLoadManager.cpp:433)
7   WebKit                        	0x00000001a25c7f74 WTF::CompletionHandler<bool (std::__1::unique_ptr<WebKit::NetworkCache::Storage::Record, std::__1::default_delete<WebKit::NetworkCache::Storage::Record> >, WebKit::NetworkCache::Storage::Timings const&)>::operator()(std::__1::unique_ptr<WebKit::NetworkCache::Storage::Record, std::__1::default_delete<WebKit::NetworkCache::Storage::Record> >, WebKit::NetworkCache::Storage::Timings const&) + 64 (Function.h:84)
8   WebKit                        	0x00000001a25d3814 WTF::Detail::CallableWrapper<WebKit::NetworkCache::Storage::finishReadOperation(WebKit::NetworkCache::Storage::ReadOperation&)::$_21, void>::call() + 200 (NetworkCacheStorage.cpp:109)
9   JavaScriptCore                	0x00000001abb6924c WTF::RunLoop::performWork() + 684 (Function.h:84)
10  JavaScriptCore                	0x00000001abb694a0 WTF::RunLoop::performWork(void*) + 36 (RunLoopCF.cpp:38)
11  CoreFoundation                	0x0000000199d3f124 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28 (CFRunLoop.c:1967)
12  CoreFoundation                	0x0000000199d3f068 __CFRunLoopDoSource0 + 176 (CFRunLoop.c:2011)
13  CoreFoundation                	0x0000000199d3e68c __CFRunLoopDoSources0 + 240 (CFRunLoop.c:2048)
14  CoreFoundation                	0x0000000199d38d7c __CFRunLoopRun + 828 (CFRunLoop.c:2925)
15  CoreFoundation                	0x0000000199d38630 CFRunLoopRunSpecific + 564 (CFRunLoop.c:3242)
16  Foundation                    	0x000000019a0cbec0 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 232 (NSRunLoop.m:374)
17  Foundation                    	0x000000019a0fe87c -[NSRunLoop(NSRunLoop) run] + 92 (NSRunLoop.m:399)
18  libxpc.dylib                  	0x00000001999ba340 _xpc_objc_main + 688 (main.m:199)
19  libxpc.dylib                  	0x00000001999bc9bc xpc_main + 180 (init.c:1373)
20  WebKit                        	0x00000001a2553ab8 WebKit::XPCServiceMain(int, char const**) + 432 (XPCServiceMain.mm:177)
21  libdyld.dylib                 	0x0000000199bc438c start + 4

Null deference of network session.
Comment 1 Chris Dumez 2020-07-06 14:42:33 PDT
<rdar://problem/64853936>
Comment 2 Chris Dumez 2020-07-06 15:16:37 PDT
Created attachment 403626 [details]
Patch
Comment 3 EWS 2020-07-06 16:30:10 PDT
Committed r263996: <https://trac.webkit.org/changeset/263996>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 403626 [details].