js/src/tests/js1_8_5/regress/regress-566914.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 function f(code) {
     2 	    code.replace(/s/, "")
     3 	    eval(code)
     4 	}
     5 	this.__defineGetter__("x", function() { return /x/.exec('x'); })
     6 	f("function a() {\
     7 	    x = Proxy.createFunction((function () {\
     8 	        return {\
     9 defineProperty:	 function (name, desc) {\
    10 	                Object.defineProperty(x, name, desc)\
    11 	            },\
    12 has:	 function () {},\
    13 get:	 function (r, name) {\
    14 	                return x[name]\
    15 	            }\
    16 	        }\
    17 	    })(), Object.defineProperties).__defineGetter__(\"\",(Function(\"\")))} ;\
    18 	a()\
    19 	")
    21 reportCompare("ok", "ok", "bug 566914");

mercurial