tor-browser

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

Environment-02.js (599B)


      1 // The last Environment on the environment chain always has .type == "object" and .object === the global object.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var dbg = new Debugger;
      5 var gw = dbg.addDebuggee(g);
      6 g.eval("function h() { debugger; }");
      7 var hits = 0;
      8 dbg.onDebuggerStatement = function (hframe) {
      9    var env = hframe.older.environment;
     10    while (env.parent)
     11        env = env.parent;
     12    assertEq(env.type, "object");
     13    assertEq(env.object, gw);
     14    hits++;
     15 };
     16 
     17 g.eval("h();");
     18 g.eval("(function () { h(); return []; })();");
     19 g.eval("with (Math) { h(-2 * PI); }");
     20 assertEq(hits, 3);