tor-browser

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

Frame-older-01.js (603B)


      1 // Basic call chain.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var result = null;
      5 var dbg = new Debugger(g);
      6 dbg.onDebuggerStatement = function (frame) {
      7    var a = [];
      8    assertEq(frame === frame.older, false);
      9    for (; frame; frame = frame.older)
     10        a.push(frame.type === 'call' ? frame.callee.name : frame.type);
     11    a.reverse();
     12    result = a.join(", ");
     13 };
     14 
     15 g.eval("function first() { return second(); }");
     16 g.eval("function second() { return eval('third()'); }");
     17 g.eval("function third() { debugger; }");
     18 g.evaluate("first();");
     19 assertEq(result, "global, first, second, eval, third");