breakpoint-06.js (585B)
1 // The argument to a breakpoint hit method is a frame. 2 3 var g = newGlobal({newCompartment: true}); 4 var dbg = Debugger(g); 5 var hits = 0; 6 dbg.onDebuggerStatement = function (frame1) { 7 function hit(frame2) { 8 assertEq(frame2, frame1); 9 hits++; 10 } 11 var s = frame1.script; 12 var offs = s.getLineOffsets(g.line0 + 2); 13 for (var i = 0; i < offs.length; i++) 14 s.setBreakpoint(offs[i], {hit: hit}); 15 }; 16 g.eval("var line0 = Error().lineNumber;\n" + 17 "debugger;\n" + // line0 + 1 18 "x = 1;\n"); // line0 + 2 19 assertEq(hits, 1); 20 assertEq(g.x, 1);