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 | // Binary: cache/js-dbg-32-e96d5b1f47b8-linux |
michael@0 | 2 | // Flags: --ion-eager |
michael@0 | 3 | // |
michael@0 | 4 | function b(z) { |
michael@0 | 5 | switch (z) { |
michael@0 | 6 | default: |
michael@0 | 7 | primarySandbox = newGlobal() |
michael@0 | 8 | } |
michael@0 | 9 | return function(f, code) { |
michael@0 | 10 | try { |
michael@0 | 11 | evalcx(code, primarySandbox) |
michael@0 | 12 | } catch (e) {} |
michael@0 | 13 | } |
michael@0 | 14 | } |
michael@0 | 15 | function a(code) { |
michael@0 | 16 | gc(); |
michael@0 | 17 | f = Function(code) |
michael@0 | 18 | c(f, code) |
michael@0 | 19 | } |
michael@0 | 20 | c = b() |
michael@0 | 21 | a("\ |
michael@0 | 22 | f2 = (function() {\ |
michael@0 | 23 | a0 + o2.m;\ |
michael@0 | 24 | a2.shift()\ |
michael@0 | 25 | });\ |
michael@0 | 26 | a2 = new Array;\ |
michael@0 | 27 | Object.defineProperty(a2, 0, {\ |
michael@0 | 28 | get: f2\ |
michael@0 | 29 | });\ |
michael@0 | 30 | o2 = {};\ |
michael@0 | 31 | a0 = [];\ |
michael@0 | 32 | a2.shift();\ |
michael@0 | 33 | var x;\ |
michael@0 | 34 | ") |
michael@0 | 35 | a("a0 = x") |
michael@0 | 36 | a("a2.shift()") |