Sat, 03 Jan 2015 20:18:00 +0100
Conditionally enable double key logic according to:
private browsing mode or privacy.thirdparty.isolate preference and
implement in GetCookieStringCommon and FindCookie where it counts...
With some reservations of how to convince FindCookie users to test
condition and pass a nullptr when disabling double key logic.
1 function f() {
2 var a = arguments;
3 eval("assertEq(arguments[0], 42)");
4 eval("assertEq(arguments, a)");
5 arguments = undefined;
6 eval("assertEq(arguments, undefined)");
7 arguments = a;
8 eval("assertEq(arguments[0], 42)");
9 eval("assertEq(arguments, a)");
10 }
11 f(42);
13 function f(z) {
14 var a = arguments;
15 eval("assertEq(arguments[0], 42)");
16 eval("assertEq(arguments, a)");
17 arguments = undefined;
18 eval("assertEq(arguments, undefined)");
19 z = 17;
20 eval("assertEq(a[0], 17)");
21 a[0] = 'ponies';
22 eval("assertEq(z, 'ponies')");
23 }
24 f(42);