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 // Return resumption values to non-debuggee frames.
3 load(libdir + 'asserts.js');
5 var g = newGlobal();
6 var dbg = new Debugger;
8 var log;
10 function handlerWithResumption(resumption) {
11 return function (frame) {
12 log += 'd';
13 dbg.removeDebuggee(g);
14 return resumption;
15 };
16 }
18 log = '';
19 dbg.onDebuggerStatement = handlerWithResumption(undefined);
20 dbg.addDebuggee(g);
21 assertEq(g.eval('debugger; 42;'), 42);
22 assertEq(log, 'd');
24 log = '';
25 dbg.onDebuggerStatement = handlerWithResumption({ return: 1729 });
26 dbg.addDebuggee(g);
27 assertEq(g.eval('debugger; 42;'), 1729);
28 assertEq(log, 'd');
30 log = '';
31 dbg.onDebuggerStatement = handlerWithResumption(null);
32 dbg.addDebuggee(g);
33 assertEq(g.evaluate('debugger; 42;', { catchTermination: true }), 'terminated');
34 assertEq(log, 'd');