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 // Forward to the target if the trap is not defined
2 var target = {};
3 Object.defineProperty(target, 'foo', {
4 value: 'bar',
5 writable: true,
6 enumerable: false,
7 configurable: true
8 });
9 var desc = Object.getOwnPropertyDescriptor(Proxy(target, {}), 'foo');
10 assertEq(desc.value, 'bar');
11 assertEq(desc.writable, true);
12 assertEq(desc.enumerable, false);
13 assertEq(desc.configurable, true);
15 var proto = {};
16 Object.defineProperty(proto, 'foo', {
17 value: 'bar',
18 writable: true,
19 enumerable: false,
20 configurable: true
21 });
22 var target = Object.create(proto);
23 assertEq(Object.getOwnPropertyDescriptor(Proxy(target, {}), 'foo'), undefined);