Bug 135345

Summary: JSContext Inspector: crash when using step-into
Product: WebKit Reporter: Joseph Pecoraro <joepeck>
Component: Web InspectorAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, graouts, joepeck, timothy, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Attachments:
Description Flags
[PATCH] Proposed Fix none

Description Joseph Pecoraro 2014-07-28 12:04:28 PDT
* STEPS TO REPRODUCE
1. JSContext with "function a() { debugger; b() } function b() { console.log("b"); }"
2. Inspect JSContext
3. run a()
4. Step Into
 => CRASH

* DETAILS
Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0   JavaScriptCore                	0x003db692 Inspector::InspectorDebuggerAgent::stepInto(WTF::String*) + 90
1   JavaScriptCore                	0x003db6b8 non-virtual thunk to Inspector::InspectorDebuggerAgent::stepInto(WTF::String*) + 24
2   JavaScriptCore                	0x003e60ce Inspector::InspectorDebuggerBackendDispatcher::stepInto(long, Inspector::InspectorObject const&) + 70
3   JavaScriptCore                	0x003e5136 Inspector::InspectorDebuggerBackendDispatcher::dispatch(long, WTF::String const&, WTF::PassRefPtr<Inspector::InspectorObject>) + 634
4   JavaScriptCore                	0x003cdf6c Inspector::InspectorBackendDispatcher::dispatch(WTF::String const&) + 1060
5   JavaScriptCore                	0x0048d3d4 Inspector::JSGlobalObjectInspectorController::dispatchMessageFromFrontend(WTF::String const&) + 40

Looks like we forgot to null check m_listener in this one place.

<rdar://problem/17364180>
Comment 1 Joseph Pecoraro 2014-07-28 12:20:42 PDT
Created attachment 235605 [details]
[PATCH] Proposed Fix
Comment 2 WebKit Commit Bot 2014-07-28 13:38:52 PDT
Comment on attachment 235605 [details]
[PATCH] Proposed Fix

Clearing flags on attachment: 235605

Committed r171688: <http://trac.webkit.org/changeset/171688>
Comment 3 WebKit Commit Bot 2014-07-28 13:38:55 PDT
All reviewed patches have been landed.  Closing bug.