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 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6 //-----------------------------------------------------------------------------
7 var BUGNUMBER = 313938;
8 var summary = 'Root access in jsscript.c';
9 var actual = '';
10 var expect = '';
12 printBugNumber(BUGNUMBER);
13 printStatus (summary);
15 if (typeof Script == 'undefined')
16 {
17 print('Test skipped. Script not defined.');
18 reportCompare("Script not defined, Test skipped.",
19 "Script not defined, Test skipped.",
20 summary);
21 }
22 else
23 {
24 var str = " 2;".substring(1);
25 "1".substring(2);
26 expect = Script.prototype.compile(str).toSource();
28 var likeString = {
29 toString: function() {
30 var tmp = str;
31 str = null;
32 return tmp;
33 }
34 };
36 TWO = 2.0;
38 var likeObject = {
39 valueOf: function() {
40 if (typeof gc == "function")
41 gc();
42 for (var i = 0; i != 40000; ++i) {
43 var tmp = 1e100 * TWO;
44 }
45 return this;
46 }
47 }
49 var s = Script.prototype.compile(likeString, likeObject);
50 var actual = s.toSource();
51 printStatus(expect === actual);
53 reportCompare(expect, actual, summary);
54 }