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.
michael@0 | 1 | /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ |
michael@0 | 2 | /* |
michael@0 | 3 | * Any copyright is dedicated to the Public Domain. |
michael@0 | 4 | * http://creativecommons.org/licenses/publicdomain/ |
michael@0 | 5 | * |
michael@0 | 6 | * Test courtesy of Olov Lassus <olov.lassus@gmail.com>. |
michael@0 | 7 | */ |
michael@0 | 8 | |
michael@0 | 9 | function keys(o) { |
michael@0 | 10 | var a = []; |
michael@0 | 11 | for (var key in o) { |
michael@0 | 12 | a.push(key); |
michael@0 | 13 | } |
michael@0 | 14 | return a; |
michael@0 | 15 | } |
michael@0 | 16 | |
michael@0 | 17 | var obj = { |
michael@0 | 18 | 'a': function() {}, 'b': function() {}, 'c': function() {} |
michael@0 | 19 | }; |
michael@0 | 20 | var orig_order = keys(obj).toString(); |
michael@0 | 21 | var tmp = obj["b"]; |
michael@0 | 22 | var read_order = keys(obj).toString(); |
michael@0 | 23 | |
michael@0 | 24 | reportCompare(orig_order, read_order, |
michael@0 | 25 | "property enumeration order should not change after reading a method value"); |