tor-browser

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

Environment-calleeScript-02.js (626B)


      1 // Debugger.Environment.prototype.calleeScript gets the right script.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var dbg = new Debugger;
      5 var gw = dbg.addDebuggee(g);
      6 
      7 g.eval('function f(x) { return function (y) { eval(""); debugger; return x + y; } }');
      8 g.eval('var g = f(2);');
      9 g.eval('var h = f(3);');
     10 
     11 function check(fun, label) {
     12  print("check(" + label + ")");
     13  var hits;
     14  dbg.onDebuggerStatement = function (frame) {
     15    hits++;
     16    var env = frame.environment;
     17    assertEq(env.calleeScript, gw.makeDebuggeeValue(fun).script);
     18  };
     19  hits = 0;
     20  fun();
     21  assertEq(hits, 1);
     22 }
     23 
     24 check(g.g, 'g.g');
     25 check(g.h, 'g.h');