Bug 139422

Summary: Web Inspector: selecting several resources causes inspector to crash
Product: WebKit Reporter: Jonathan Wells <jonowells>
Component: JavaScriptCoreAssignee: Mark Lam <mark.lam>
Status: ASSIGNED    
Severity: Normal CC: graouts, joepeck, mark.lam, mmaxfield, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   

Jonathan Wells
Reported 2014-12-08 16:58:31 PST
To reproduce: 1. Navigate to a page with many resources, say http://twitter.com 2. Open the inspector 3. Select resources repeatedly in the resources tab. Reselecting ones that have already been selected and loaded is fine. After a little bit of this, the inspector will crash and close.
Attachments
Radar WebKit Bug Importer
Comment 1 2014-12-08 16:59:00 PST
Jonathan Wells
Comment 2 2014-12-08 17:29:26 PST
Crash Log Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000018 VM Regions Near 0x18: --> __TEXT 00000001017dd000-00000001017df000 [ 8K] r-x/rwx SM=COW /Users/USER/*/WebKit.framework/Versions/A/XPCServices/com.apple.WebKit.WebContent.Development.xpc/Contents/MacOS/com.apple.WebKit.WebContent.Development Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 ??? 0x000052eaa8b1a5d1 0 + 91167806039505 1 ??? 0x000052eaa88437bf 0 + 91167803062207 2 ??? 0x000052eaa8b65783 0 + 91167806347139 3 ??? 0x000052eaa8b59da5 0 + 91167806299557 4 ??? 0x000052eaa867b79a 0 + 91167801194394 5 ??? 0x000052eaa8b3a7dc 0 + 91167806171100 6 ??? 0x000052eaa8b2914a 0 + 91167806099786 7 ??? 0x000052eaa8a67f72 0 + 91167805308786 8 ??? 0x000052eaa86272c3 0 + 91167800849091 9 ??? 0x000052eaa8a2ca7f 0 + 91167805065855 10 ??? 0x000052eae860001a 0 + 91168874430490 11 ??? 0x000052eaa8b47b1e 0 + 91167806225182 12 ??? 0x000052eaa86272c3 0 + 91167800849091 13 ??? 0x000052eaa8a2ca7f 0 + 91167805065855 14 ??? 0x000052eae860001a 0 + 91168874430490 15 ??? 0x000052eaa88f39f3 0 + 91167803783667 16 ??? 0x000052eaa8b4619f 0 + 91167806218655 17 ??? 0x000052eae860001a 0 + 91168874430490 18 com.apple.JavaScriptCore 0x000000010994c468 vmEntryToJavaScript + 326 19 com.apple.JavaScriptCore 0x00000001098481e9 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 169 (JITCode.cpp:78) 20 com.apple.JavaScriptCore 0x000000010982c604 JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 468 (Interpreter.cpp:977) 21 com.apple.JavaScriptCore 0x00000001095a962e JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 62 (CallData.cpp:39) 22 com.apple.JavaScriptCore 0x00000001098978ca JSC::boundFunctionCall(JSC::ExecState*) + 586 (JSBoundFunction.cpp:54) 23 ??? 0x000052eaa8604834 0 + 91167800707124 24 ??? 0x000052eaa87e52d7 0 + 91167802675927 25 ??? 0x000052eae8600034 0 + 91168874430516 26 ??? 0x000052eaa8adb6c3 0 + 91167805781699 27 com.apple.JavaScriptCore 0x000000010994c468 vmEntryToJavaScript + 326 28 com.apple.JavaScriptCore 0x00000001098481e9 JSC::JITCode::execute(JSC::VM*, JSC::ProtoCallFrame*) + 169 (JITCode.cpp:78) 29 com.apple.JavaScriptCore 0x000000010982c604 JSC::Interpreter::executeCall(JSC::ExecState*, JSC::JSObject*, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&) + 468 (Interpreter.cpp:977) 30 com.apple.JavaScriptCore 0x00000001095a967f JSC::call(JSC::ExecState*, JSC::JSValue, JSC::CallType, JSC::CallData const&, JSC::JSValue, JSC::ArgList const&, JSC::JSValue*) + 63 (Register.h:116) 31 com.apple.WebCore 0x000000010a4ed3e6 WebCore::JSEventListener::handleEvent(WebCore::ScriptExecutionContext*, WebCore::Event*) + 998 (JSMainThreadExecState.h:56) 32 com.apple.WebCore 0x000000010a1653dc WebCore::EventTarget::fireEventListeners(WebCore::Event*, WebCore::EventTargetData*, WTF::Vector<WebCore::RegisteredEventListener, 1u, WTF::CrashOnOverflow>&) + 652 (InspectorInstrumentation.h:289) 33 com.apple.WebCore 0x000000010a16507f WebCore::EventTarget::fireEventListeners(WebCore::Event*) + 239 (EventTarget.cpp:207) 34 com.apple.WebCore 0x000000010a14b9ae WebCore::MouseOrFocusEventContext::handleLocalEvents(WebCore::Event&) const + 190 (EventContext.cpp:87) 35 com.apple.WebCore 0x000000010a14c474 WebCore::EventDispatcher::dispatchEvent(WebCore::Node*, WTF::PassRefPtr<WebCore::Event>) + 1060 (Event.h:153) 36 com.apple.WebCore 0x000000010a80e58d WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event>) + 29 (Node.cpp:2043) 37 com.apple.WebCore 0x000000010a137d1b WebCore::Element::dispatchMouseEvent(WebCore::PlatformMouseEvent const&, WTF::AtomicString const&, int, WebCore::Element*) + 267 (Element.cpp:246) 38 com.apple.WebCore 0x000000010a15591e WebCore::EventHandler::dispatchMouseEvent(WTF::AtomicString const&, WebCore::Node*, bool, int, WebCore::PlatformMouseEvent const&, bool) + 110 (EventHandler.cpp:2558) 39 com.apple.WebCore 0x000000010a155466 WebCore::EventHandler::handleMousePressEvent(WebCore::PlatformMouseEvent const&) + 1782 (EventHandler.cpp:1739) 40 com.apple.WebCore 0x000000010ac6d2cb WebCore::UserInputBridge::handleMousePressEvent(WebCore::PlatformMouseEvent const&, WebCore::InputSource) + 267 (UserInputBridge.cpp:93) 41 com.apple.WebKit 0x0000000108afa7f6 WebKit::handleMouseEvent(WebKit::WebMouseEvent const&, WebKit::WebPage*, bool) + 213 (WebPage.cpp:1892) 42 com.apple.WebKit 0x0000000108afa6e7 WebKit::WebPage::mouseEvent(WebKit::WebMouseEvent const&) + 187 (WebPage.cpp:1838) 43 com.apple.WebKit 0x0000000108b1226a void IPC::handleMessage<Messages::WebPage::MouseEvent, WebKit::WebPage, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&)>(IPC::MessageDecoder&, WebKit::WebPage*, void (WebKit::WebPage::*)(WebKit::WebMouseEvent const&)) + 84 (HandleMessage.h:121) 44 com.apple.WebKit 0x0000000108b0f6f6 WebKit::WebPage::didReceiveWebPageMessage(IPC::Connection*, IPC::MessageDecoder&) + 2198 (WebPageMessageReceiver.cpp:175) 45 com.apple.WebKit 0x00000001089f056a IPC::MessageReceiverMap::dispatchMessage(IPC::Connection*, IPC::MessageDecoder&) + 120 (MessageReceiverMap.cpp:87) 46 com.apple.WebKit 0x0000000108b5422e WebKit::WebProcess::didReceiveMessage(IPC::Connection*, IPC::MessageDecoder&) + 28 (WebProcess.cpp:603) 47 com.apple.WebKit 0x00000001089912f6 IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::MessageDecoder, std::__1::default_delete<IPC::MessageDecoder> >) + 94 (memory:2603) 48 com.apple.WebKit 0x00000001089934bc IPC::Connection::dispatchOneMessage() + 114 (memory:2623) 49 com.apple.JavaScriptCore 0x0000000109aba7f6 WTF::RunLoop::performWork() + 422 (RunLoop.cpp:106) 50 com.apple.JavaScriptCore 0x0000000109abaec2 WTF::RunLoop::performWork(void*) + 34 (RunLoopCF.cpp:39) 51 com.apple.CoreFoundation 0x00007fff871c2551 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 52 com.apple.CoreFoundation 0x00007fff871b46dd __CFRunLoopDoSources0 + 269 53 com.apple.CoreFoundation 0x00007fff871b3d0f __CFRunLoopRun + 927 54 com.apple.CoreFoundation 0x00007fff871b3728 CFRunLoopRunSpecific + 296 55 com.apple.HIToolbox 0x00007fff94692a2f RunCurrentEventLoopInMode + 235 56 com.apple.HIToolbox 0x00007fff946927aa ReceiveNextEventCommon + 431 57 com.apple.HIToolbox 0x00007fff946925eb _BlockUntilNextEventMatchingListInModeWithFilter + 71 58 com.apple.AppKit 0x00007fff8a21677d _DPSNextEvent + 964 59 com.apple.AppKit 0x00007fff8a215f30 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 194 60 com.apple.AppKit 0x00007fff8a209d83 -[NSApplication run] + 594 61 com.apple.AppKit 0x00007fff8a1f5184 NSApplicationMain + 1832 62 libxpc.dylib 0x00007fff958a2ef2 _xpc_objc_main + 793 63 libxpc.dylib 0x00007fff958a4a9d xpc_main + 490 64 com.apple.WebKit.WebContent.Development 0x00000001017de620 main + 16 (XPCServiceMain.Development.mm:94) 65 libdyld.dylib 0x00007fff95cea5c9 start + 1
Mark Lam
Comment 3 2015-04-27 14:00:03 PDT
Mark Lam
Comment 4 2015-04-27 14:08:54 PDT
The crash trace on a debug build: ASSERTION FAILED: isSymbol() /Volumes/Data/ws2/OpenSource/Source/JavaScriptCore/runtime/JSCJSValue.cpp(104) : JSC::JSObject *JSC::JSValue::synthesizePrototype(JSC::ExecState *) const * thread #1: tid = 0x543f99, 0x00000001169adcda JavaScriptCore`WTFCrash + 42 at Assertions.cpp:321, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xbbadbeef) * frame #0: 0x00000001169adcda JavaScriptCore`WTFCrash + 42 at Assertions.cpp:321 frame #1: 0x00000001165f8b22 JavaScriptCore`JSC::JSValue::synthesizePrototype(this=0x00007fff54205e58, exec=0x00007fff54205f50) const + 146 at JSCJSValue.cpp:104 frame #2: 0x0000000115fcf16d JavaScriptCore`JSC::JSValue::getPropertySlot(this=0x00007fff54205e58, exec=0x00007fff54205f50, propertyName=PropertyName at 0x00007fff54205db0, slot=0x00007fff54205e20) const + 173 at JSCJSValueInlines.h:715 frame #3: 0x00000001165a7c34 JavaScriptCore`operationGetByIdBuildList(exec=0x00007fff54205f50, stubInfo=0x0000000139ddb3c0, base=140734604795456, uid=0x0000000121da8468) + 180 at JITOperations.cpp:171 frame #4: 0x0000524ec24ddf2b ...
Mark Lam
Comment 5 2015-04-27 14:19:59 PDT
If the DFG is disabled, this issue does not reproduce.
Timothy Hatcher
Comment 6 2015-10-23 09:18:50 PDT
*** Bug 150490 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.