js/src/jit-test/tests/debug/Frame-identity-01.js

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 // |jit-test| debug
     2 // Check that {return:} resumption kills the current stack frame.
     4 var g = newGlobal();
     5 g.debuggeeGlobal = this;
     6 g.eval("(" + function () {
     7         var dbg = new Debugger(debuggeeGlobal);
     8         var prev = null;
     9         dbg.onDebuggerStatement = function (frame) {
    10             assertEq(frame === prev, false);
    11             if (prev)
    12                 assertEq(prev.live, false);
    13             prev = frame;
    14             return {return: frame.arguments[0]};
    15         };
    16     } + ")();");
    18 function f(i) { debugger; }
    19 for (var i = 0; i < 10; i++)
    20     assertEq(f(i), i);

mercurial