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 #include "EditTxn.h"
7 #include "nsError.h"
8 #include "nsISupportsBase.h"
10 NS_IMPL_CYCLE_COLLECTION_CLASS(EditTxn)
12 NS_IMPL_CYCLE_COLLECTION_UNLINK_0(EditTxn)
13 NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(EditTxn)
14 // We don't have anything to traverse, but some of our subclasses do.
15 NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
17 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(EditTxn)
18 NS_INTERFACE_MAP_ENTRY(nsITransaction)
19 NS_INTERFACE_MAP_ENTRY(nsPIEditorTransaction)
20 NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsITransaction)
21 NS_INTERFACE_MAP_END
23 NS_IMPL_CYCLE_COLLECTING_ADDREF(EditTxn)
24 NS_IMPL_CYCLE_COLLECTING_RELEASE_WITH_LAST_RELEASE(EditTxn, LastRelease())
26 EditTxn::~EditTxn()
27 {
28 }
30 NS_IMETHODIMP
31 EditTxn::RedoTransaction(void)
32 {
33 return DoTransaction();
34 }
36 NS_IMETHODIMP
37 EditTxn::GetIsTransient(bool *aIsTransient)
38 {
39 *aIsTransient = false;
41 return NS_OK;
42 }
44 NS_IMETHODIMP
45 EditTxn::Merge(nsITransaction *aTransaction, bool *aDidMerge)
46 {
47 *aDidMerge = false;
49 return NS_OK;
50 }