js/src/jit-test/tests/basic/bug757431.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.

     2 function setterFunction(v) { called = true; }
     3 function getterFunction(v) { return "getter"; }
     4 Object.defineProperty(Array.prototype, 1,{ 
     5   get: getterFunction, 
     6   set: setterFunction 
     7 });
     8 gczeal(4);
     9 var N = 350;
    10 var source = "".concat(
    11   repeat_str("try { f(); } finally {\n", N),
    12   repeat_str("}", N));
    13 function repeat_str(str, repeat_count) {
    14   var arr = new Array(--repeat_count);
    15   while (repeat_count != 0)
    16     arr[--repeat_count] = str;
    17   return str.concat.apply(str, arr);
    18 }

mercurial