Thu, 15 Jan 2015 15:59:08 +0100
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 // uncaughtExceptionHook returns a resumption value.
3 load(libdir + "asserts.js");
5 var g = newGlobal();
6 var dbg = new Debugger(g);
7 var rv;
8 dbg.onDebuggerStatement = function () { throw 15; };
9 dbg.uncaughtExceptionHook = function (exc) {
10 assertEq(exc, 15);
11 return rv;
12 };
14 // case 1: undefined
15 rv = undefined;
16 g.eval("debugger");
18 // case 2: throw
19 rv = {throw: 57};
20 var result;
21 assertThrowsValue(function () { g.eval("debugger"); }, 57);
23 // case 3: return
24 rv = {return: 42};
25 assertEq(g.eval("debugger;"), 42);