// |jit-test| | |
// If a frame's onPop handler throws, we should not call the | |
// onExceptionUnwind hook for that frame. | |
var g = newGlobal(); | |
var dbg = new Debugger(g); | |
g.eval('function f() { var y; debugger; }'); | |
dbg.onExceptionUnwind = function() { | |
assertEq(0, 1); | |
}; | |
dbg.onDebuggerStatement = function handleDebugger(frame) { | |
frame.onPop = function(c) { | |
return {throw: 555}; | |
} | |
}; | |
try { | |
g.f(); | |
assertEq(0, 2); | |
} catch(e) { | |
assertEq(e.toString().includes("555"), true); | |
} |