Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 // |jit-test|
3 // If an exception unwind hook performs a forced return, and this calls an
4 // onPop handler that throws, the exception should not be handled in the
5 // current frame but propagated to the caller.
6 var g = newGlobal();
7 var dbg = new Debugger(g);
9 g.eval('function f() { try { var y; throw 123; } catch(e) { assertEq(0, 1); } }');
11 dbg.onExceptionUnwind = function(frame) {
12 frame.onPop = function() {
13 return {throw: 321};
14 }
16 return {return: 11};
17 };
19 try {
20 g.f();
21 assertEq(0, 1);
22 } catch(e) {
23 assertEq(e.toString().contains("321"), true);
24 }