Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
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 }