[Webkit-unassigned] [Bug 19037] New: Crash in WebCore::currentCallFrame when clicking Step Out

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue May 13 16:31:28 PDT 2008


http://bugs.webkit.org/show_bug.cgi?id=19037

           Summary: Crash in WebCore::currentCallFrame when clicking Step
                    Out
           Product: WebKit
           Version: 526+ (Nightly build)
          Platform: All
               URL: http://webkit.org/demos/drosera
        OS/Version: All
            Status: NEW
          Keywords: HasReduction, PlatformOnly
          Severity: Normal
          Priority: P2
         Component: Web Inspector
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: aroben at apple.com
                CC: mrowe at apple.com, timothy at hatcher.name


I'm seeing a crash in WebCore::currentCallFrame when clicking the Step Out
button.

Steps to reproduce:
1. Go to http://webkit.org/demos/drosera
2. Open and attach the Inspector's debugger
3. Put a breakpoint in the rot13 function
4. Click the button labelled "Nested Functions"
5. Click Step Out twice

InspectorController::currentCallFrame seems to be returning 0.
>	WebKit_debug.dll!WebCore::JavaScriptCallFrame::isValid()  Line 43 + 0x13 bytes	C++
        WebKit_debug.dll!WebCore::currentCallFrame(const OpaqueJSContext *
ctx=0x0012ed14, OpaqueJSValue * __formal=0x087321c0, OpaqueJSValue *
thisObject=0x08720d80, OpaqueJSValue * __formal=0x087321c0, OpaqueJSValue *
__formal=0x087321c0, OpaqueJSValue * __formal=0x087321c0)  Line 831 + 0x8 bytes
    C++
        WebKit_debug.dll!KJS::JSCallbackFunction::callAsFunction(KJS::ExecState
* exec=0x0012ed14, KJS::JSObject * thisObj=0x08720d80, const KJS::List &
args={...})  Line 65 + 0x35 bytes      C++
        WebKit_debug.dll!KJS::JSObject::call(KJS::ExecState * exec=0x0012ed14,
KJS::JSObject * thisObj=0x08720d80, const KJS::List & args={...})  Line 99 +
0x1b bytes  C++
       
WebKit_debug.dll!KJS::FunctionCallDotNode::inlineEvaluate(KJS::ExecState *
exec=0x0012ed14)  Line 1495 + 0x14 bytes     C++
        WebKit_debug.dll!KJS::FunctionCallDotNode::evaluate(KJS::ExecState *
exec=0x0012ed14)  Line 1501        C++
        WebKit_debug.dll!KJS::AssignLocalVarNode::evaluate(KJS::ExecState *
exec=0x0012ed14)  Line 3554 + 0x21 bytes    C++
        WebKit_debug.dll!KJS::VarStatementNode::execute(KJS::ExecState *
exec=0x0012ed14)  Line 4009 + 0x21 bytes       C++
       
WebKit_debug.dll!KJS::statementListExecute(WTF::Vector<WTF::RefPtr<KJS::StatementNode>,0>
& statements={...}, KJS::ExecState * exec=0x0012ed14)  Line 3946 + 0x29 bytes
C++
        WebKit_debug.dll!KJS::BlockNode::execute(KJS::ExecState *
exec=0x0012ed14)  Line 3971 + 0x10 bytes      C++
        WebKit_debug.dll!KJS::FunctionBodyNode::execute(KJS::ExecState *
exec=0x0012ed14)  Line 4891    C++
        WebKit_debug.dll!KJS::FunctionImp::callAsFunction(KJS::ExecState *
exec=0x0012eec8, KJS::JSObject * thisObj=0x0874e460, const KJS::List &
args={...})  Line 78 + 0x21 bytes     C++
        WebKit_debug.dll!KJS::JSObject::call(KJS::ExecState * exec=0x0012eec8,
KJS::JSObject * thisObj=0x0874e460, const KJS::List & args={...})  Line 99 +
0x1b bytes  C++
       
WebKit_debug.dll!KJS::FunctionCallDotNode::inlineEvaluate(KJS::ExecState *
exec=0x0012eec8)  Line 1495 + 0x14 bytes     C++
        WebKit_debug.dll!KJS::FunctionCallDotNode::evaluate(KJS::ExecState *
exec=0x0012eec8)  Line 1501        C++
        WebKit_debug.dll!KJS::ExprStatementNode::execute(KJS::ExecState *
exec=0x0012eec8)  Line 3993 + 0x21 bytes      C++
       
WebKit_debug.dll!KJS::statementListExecute(WTF::Vector<WTF::RefPtr<KJS::StatementNode>,0>
& statements={...}, KJS::ExecState * exec=0x0012eec8)  Line 3946 + 0x29 bytes
C++
        WebKit_debug.dll!KJS::BlockNode::execute(KJS::ExecState *
exec=0x0012eec8)  Line 3971 + 0x10 bytes      C++
        WebKit_debug.dll!KJS::FunctionBodyNode::execute(KJS::ExecState *
exec=0x0012eec8)  Line 4891    C++
        WebKit_debug.dll!KJS::FunctionImp::callAsFunction(KJS::ExecState *
exec=0x077822f8, KJS::JSObject * thisObj=0x071e3660, const KJS::List &
args={...})  Line 78 + 0x21 bytes     C++
        WebKit_debug.dll!KJS::JSObject::call(KJS::ExecState * exec=0x077822f8,
KJS::JSObject * thisObj=0x071e3660, const KJS::List & args={...})  Line 99 +
0x1b bytes  C++
        WebKit_debug.dll!JSObjectCallAsFunction(const OpaqueJSContext *
ctx=0x077822f8, OpaqueJSValue * object=0x071e4160, OpaqueJSValue *
thisObject=0x071e3660, unsigned int argumentCount=0, const OpaqueJSValue *
const * arguments=0x00000000, const OpaqueJSValue * * exception=0x0012f018) 
Line 288 + 0x14 bytes        C++
        WebKit_debug.dll!WebCore::InspectorController::callFunction(const
OpaqueJSContext * context=0x077822f8, OpaqueJSValue * thisObject=0x071e3660,
const char * functionName=0x017f9570, unsigned int argumentCount=0, const
OpaqueJSValue * const * arguments=0x00000000, const OpaqueJSValue * &
exception=0x00000000)  Line 135 + 0x1d bytes     C++
        WebKit_debug.dll!WebCore::InspectorController::didPause()  Line 2253   
C++
        WebKit_debug.dll!WebCore::dispatchFunctionToListeners(const
WTF::HashSet<WebCore::JavaScriptDebugListener
*,WTF::PtrHash<WebCore::JavaScriptDebugListener
*>,WTF::HashTraits<WebCore::JavaScriptDebugListener *> > & listeners={...},
void (void)* callback=0x00f76300)  Line 305 + 0x13 bytes  C++
       
WebKit_debug.dll!WebCore::JavaScriptDebugServer::dispatchFunctionToListeners(void
(void)* callback=0x00f76300, KJS::ExecState * exec=0x0012f104)  Line 324 + 0xd
bytes  C++
       
WebKit_debug.dll!WebCore::JavaScriptDebugServer::pauseIfNeeded(KJS::ExecState *
exec=0x0012f104, int sourceID=45, int lineNumber=53)  Line 412  C++
       
WebKit_debug.dll!WebCore::JavaScriptDebugServer::returnEvent(KJS::ExecState *
exec=0x0012f104, int sourceID=45, int lineNumber=53, KJS::JSObject *
__formal=0x08738c00)  Line 457       C++
       
WebKit_debug.dll!KJS::FunctionBodyNodeWithDebuggerHooks::execute(KJS::ExecState
* exec=0x0012f104)  Line 4912 + 0x2e bytes      C++
        WebKit_debug.dll!KJS::FunctionImp::callAsFunction(KJS::ExecState *
exec=0x05224560, KJS::JSObject * thisObj=0x08738b00, const KJS::List &
args={...})  Line 78 + 0x21 bytes     C++
        WebKit_debug.dll!KJS::JSObject::call(KJS::ExecState * exec=0x05224560,
KJS::JSObject * thisObj=0x08738b00, const KJS::List & args={...})  Line 99 +
0x1b bytes  C++
       
WebKit_debug.dll!WebCore::JSAbstractEventListener::handleEvent(WebCore::Event *
ele=0x083395b0, bool isWindowEvent=false)  Line 100 + 0x14 bytes        C++
       
WebKit_debug.dll!WebCore::EventTarget::handleLocalEvents(WebCore::EventTargetNode
* referenceNode=0x07e282a0, WebCore::Event * evt=0x083395b0, bool
useCapture=false)  Line 314 + 0x2e bytes    C++
       
WebKit_debug.dll!WebCore::EventTargetNode::handleLocalEvents(WebCore::Event *
evt=0x083395b0, bool useCapture=false)  Line 106  C++
       
WebKit_debug.dll!WebCore::EventTarget::dispatchGenericEvent(WebCore::EventTargetNode
* referenceNode=0x07e282a0, WTF::PassRefPtr<WebCore::Event> e={...}, int &
__formal=0, bool tempEvent=true)  Line 212 + 0x1d bytes C++
       
WebKit_debug.dll!WebCore::EventTargetNode::dispatchEvent(WTF::PassRefPtr<WebCore::Event>
e={...}, int & ec=0, bool tempEvent=true)  Line 121 + 0x1e bytes       C++
        WebKit_debug.dll!WebCore::EventTargetNode::dispatchMouseEvent(const
WebCore::AtomicString & eventType={...}, int button=0, int detail=1, int
pageX=419, int pageY=287, int screenX=990, int screenY=426, bool ctrlKey=false,
bool altKey=false, bool shiftKey=false, bool metaKey=false, bool
isSimulated=false, WebCore::Node * relatedTargetArg=0x00000000,
WTF::PassRefPtr<WebCore::Event> underlyingEvent={...})  Line 297  C++
        WebKit_debug.dll!WebCore::EventTargetNode::dispatchMouseEvent(const
WebCore::PlatformMouseEvent & event={...}, const WebCore::AtomicString &
eventType={...}, int detail=1, WebCore::Node * relatedTarget=0x00000000)  Line
215 C++
        WebKit_debug.dll!WebCore::EventHandler::dispatchMouseEvent(const
WebCore::AtomicString & eventType={...}, WebCore::Node * targetNode=0x07e28538,
bool cancelable=true, int clickCount=1, const WebCore::PlatformMouseEvent &
mouseEvent={...}, bool setUnder=true)  Line 1276 + 0x29 bytes      C++
        WebKit_debug.dll!WebCore::EventHandler::handleMouseReleaseEvent(const
WebCore::PlatformMouseEvent & mouseEvent={...})  Line 1098 + 0x28 bytes   C++
        WebKit_debug.dll!WebView::handleMouseEvent(unsigned int message=514,
unsigned int wParam=0, long lParam=18809251)  Line 1242    C++
        WebKit_debug.dll!WebViewWndProc(HWND__ * hWnd=0x000d063e, unsigned int
message=514, unsigned int wParam=0, long lParam=18809251)  Line 1671 + 0x14
bytes        C++


-- 
Configure bugmail: http://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list