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 // Hitting a breakpoint with no hit method does nothing.
3 var g = newGlobal();
4 g.s = '';
5 g.eval("var line0 = Error().lineNumber;\n" +
6 "function f() {\n" + // line0 + 1
7 " debugger;\n" + // line0 + 2
8 " s += 'x';\n" + // line0 + 3
9 "}\n")
10 var dbg = Debugger(g);
11 var bp = [];
12 dbg.onDebuggerStatement = function (frame) {
13 g.s += 'D';
14 var arr = frame.script.getLineOffsets(g.line0 + 3);
15 for (var i = 0; i < arr.length; i++) {
16 var obj = {};
17 bp[i] = obj;
18 frame.script.setBreakpoint(arr[i], obj);
19 }
20 };
22 g.f();
23 assertEq(g.s, "Dx");
25 dbg.onDebuggerStatement = undefined;
27 for (var i = 0; i < bp.length; i++)
28 bp[i].hit = function () { g.s += 'B'; };
29 g.f();
30 assertEq(g.s, "DxBx");