js/src/jit-test/tests/debug/Frame-identity-02.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 {throw:} resumption kills the current stack frame.
     4 load(libdir + "asserts.js");
     6 var g = newGlobal();
     7 g.debuggeeGlobal = this;
     8 g.eval("(" + function () {
     9         var dbg = new Debugger(debuggeeGlobal);
    10         var prev = null;
    11         dbg.onDebuggerStatement = function (frame) {
    12             assertEq(frame === prev, false);
    13             if (prev)
    14                 assertEq(prev.live, false);
    15             prev = frame;
    16             return {throw: debuggeeGlobal.i};
    17         };
    18     } + ")();");
    20 function f() { debugger; }
    21 for (var i = 0; i < 10; i++)
    22     assertThrowsValue(f, i);

mercurial