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 = 292731;
8 var summary = 'for-in should not call valueOf method';
9 var actual = '';
10 var expect = '';
11 var i;
13 printBugNumber(BUGNUMBER);
14 printStatus (summary);
16 function MyObject()
17 {
18 }
20 MyObject.prototype.valueOf = function()
21 {
22 actual += 'MyObject.prototype.valueOf called. ';
23 }
25 var myobject = new MyObject();
27 var myfunction = new function()
28 {
29 this.valueOf = function()
30 {
31 actual += 'this.valueOf called. ';
32 }
33 }
35 actual = '';
36 for (i in myobject)
37 {
38 //calls valueOf
39 }
40 reportCompare(expect, actual, 'for-in custom object');
42 actual = '';
43 for (i in myfunction)
44 {
45 //calls valueOf
46 }
47 reportCompare(expect, actual, 'for-in function expression');