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() {
2 var o = {'arguments': 42};
3 with (o) { // Definitely forces heavyweight.
4 // Note syntax is not a property access.
5 reportCompare(delete arguments, true,
6 "arguments property deletion within with block");
7 }
8 reportCompare('arguments' in o, false,
9 "property deletion observable");
10 })();
12 (function() {
13 var o = {'arguments': 42};
14 delete o.arguments;
15 reportCompare('arguments' in o, false,
16 "arguments property deletion with property access syntax");
17 })();
19 (function() {
20 var arguments = 42; // Forces heavyweight.
21 reportCompare(delete arguments, false,
22 "arguments variable");
23 })();
25 (function() {
26 reportCompare(delete arguments, false, "arguments object");
27 })();