tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Script-mainOffset-01.js (602B)


      1 /* -*- indent-tabs-mode: nil; js-indent-level: 2; js-indent-level: 2 -*- */
      2 // The main offset of a script should be hit before it performs any actions.
      3 
      4 var g = newGlobal({newCompartment: true});
      5 g.eval("var n = 0; function foo() { n = 1; }");
      6 var dbg = Debugger(g);
      7 
      8 var hits = 0;
      9 function breakpointHit(frame) {
     10  hits++;
     11  assertEq(frame.eval("n").return, 0);
     12 }
     13 
     14 dbg.onDebuggerStatement = function (frame) {
     15  var script = frame.eval("foo").return.script;
     16  script.setBreakpoint(script.mainOffset, { hit: breakpointHit });
     17 };
     18 g.eval("debugger; foo()");
     19 assertEq(g.eval("n"), 1);
     20 assertEq(hits, 1);