[Webkit-unassigned] [Bug 93607] Web Inspector: [JSC] Caught exception is treated as uncaught

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Sep 9 16:07:03 PDT 2013


https://bugs.webkit.org/show_bug.cgi?id=93607





--- Comment #3 from Joseph Pecoraro <joepeck at webkit.org>  2013-09-09 16:06:15 PST ---
Yep, this looks like a JSC issue.

ScriptDebugServer::execution is getting called with "hasHandler" being false. We would expect this to be true, because there is an eventual exception handler up the stack. I suspect this is a regression that happened a while ago.


---

(lldb) b ScriptDebugServer::exception

(lldb) c
* thread #1: tid = 0x8da30a, 0x00000001124613f7 WebCore`WebCore::ScriptDebugServer::exception(this=0x00007f948310b130, debuggerCallFrame=0x00007fff51742118, sourceID=1, lineNumber=14, columnNumber=0, hasHandler=false) + 39 at ScriptDebugServer.cpp:529, queue = 'com.apple.main-thread, stop reason = breakpoint 2.1
    frame #0: 0x00000001124613f7 WebCore`WebCore::ScriptDebugServer::exception(this=0x00007f948310b130, debuggerCallFrame=0x00007fff51742118, sourceID=1, lineNumber=14, columnNumber=0, hasHandler=false) + 39 at ScriptDebugServer.cpp:529
   526     
   527     void ScriptDebugServer::exception(const DebuggerCallFrame& debuggerCallFrame, intptr_t sourceID, int lineNumber, int columnNumber, bool hasHandler)
   528     {
-> 529         if (m_paused)
   530             return;
   531     
   532         if (m_pauseOnExceptionsState == PauseOnAllExceptions || (m_pauseOnExceptionsState == PauseOnUncaughtExceptions && !hasHandler))

(lldb) p hasHandler
(bool) $8 = false

(lldb) bt
* thread #1: tid = 0x8da30a, 0x00000001124613f7 WebCore`WebCore::ScriptDebugServer::exception(this=0x00007f948310b130, debuggerCallFrame=0x00007fff51742118, sourceID=1, lineNumber=14, columnNumber=0, hasHandler=false) + 39 at ScriptDebugServer.cpp:529, queue = 'com.apple.main-thread, stop reason = breakpoint 2.1
    frame #0: 0x00000001124613f7 WebCore`WebCore::ScriptDebugServer::exception(this=0x00007f948310b130, debuggerCallFrame=0x00007fff51742118, sourceID=1, lineNumber=14, columnNumber=0, hasHandler=false) + 39 at ScriptDebugServer.cpp:529
    frame #1: 0x000000010fe92b3f JavaScriptCore`JSC::Interpreter::unwind(this=0x00007f9483464d50, callFrame=0x00007fff517421f0, exceptionValue=0x00007fff517421e8, bytecodeOffset=29) + 847 at Interpreter.cpp:633
    frame #2: 0x000000010feb359e JavaScriptCore`JSC::genericUnwind(vm=0x00007f9482821400, callFrame=0x0000000118f600c8, exceptionValue=JSValue at 0x00007fff517421e8, vPCIndex=29) + 110 at JITExceptions.cpp:73
    frame #3: 0x000000010ffc0e08 JavaScriptCore`doThrow(exec=0x0000000118f600c8, pc=0x00007f948303a970) + 136 at LLIntExceptions.cpp:51
    frame #4: 0x000000010ffc0d6d JavaScriptCore`JSC::LLInt::returnToThrow(exec=0x0000000118f600c8, pc=0x00007f948303a970) + 29 at LLIntExceptions.cpp:60
    frame #5: 0x000000010ffc89c5 JavaScriptCore`llint_slow_path_get_from_scope(exec=0x0000000118f600c8, pc=0x00007f948303a970) + 469 at LLIntSlowPaths.cpp:1295
    frame #6: 0x000000010ffce851 JavaScriptCore`llint_op_get_from_scope + 494

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


More information about the webkit-unassigned mailing list