js/src/jit-test/tests/debug/Debugger-onNewGlobalObject-03.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 // onNewGlobalObject handlers on different Debugger instances are independent.
     3 var dbg1 = new Debugger;
     4 var log1;
     5 function h1(global) {
     6   log1 += 'n';
     7   assertEq(global.seen, undefined);
     8   global.seen = true;
     9 }
    11 var dbg2 = new Debugger;
    12 var log2;
    13 function h2(global) {
    14   log2 += 'n';
    15   assertEq(global.seen, undefined);
    16   global.seen = true;
    17 }
    19 log1 = log2 = '';
    20 newGlobal();
    21 assertEq(log1, '');
    22 assertEq(log2, '');
    24 log1 = log2 = '';
    25 dbg1.onNewGlobalObject = h1;
    26 newGlobal();
    27 assertEq(log1, 'n');
    28 assertEq(log2, '');
    30 log1 = log2 = '';
    31 dbg2.onNewGlobalObject = h2;
    32 newGlobal();
    33 assertEq(log1, 'n');
    34 assertEq(log2, 'n');
    36 log1 = log2 = '';
    37 dbg1.onNewGlobalObject = undefined;
    38 newGlobal();
    39 assertEq(log1, '');
    40 assertEq(log2, 'n');

mercurial