Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
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");