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 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
4 Components.utils.import("resource://gre/modules/Promise.jsm");
6 let WORKER_SOURCE_URI =
7 "chrome://test_sqlite_internal/content/worker_sqlite_internal.js";
8 do_load_manifest("data/chrome.manifest");
10 function run_test() {
11 run_next_test();
12 }
14 add_task(function() {
15 let worker = new ChromeWorker(WORKER_SOURCE_URI);
16 let deferred = Promise.defer();
17 worker.onmessage = function(event) {
18 let data = event.data;
19 switch (data.kind) {
20 case "do_check_true":
21 try {
22 do_check_true(data.args[0]);
23 } catch (ex) {
24 // Ignore errors
25 }
26 break;
27 case "do_test_complete":
28 deferred.resolve();
29 worker.terminate();
30 break;
31 case "do_print":
32 do_print(data.args[0]);
33 break;
34 }
35 };
36 worker.onerror = function(event) {
37 let error = new Error(event.message, event.filename, event.lineno);
38 worker.terminate();
39 deferred.reject(error);
40 };
41 worker.postMessage("START");
42 return deferred.promise;
43 });