Tue, 06 Jan 2015 21:39:09 +0100
Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.
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 "XULListboxAccessibleWrap.h"
8 using namespace mozilla::a11y;
10 ////////////////////////////////////////////////////////////////////////////////
11 // XULListboxAccessibleWrap
12 ////////////////////////////////////////////////////////////////////////////////
14 NS_IMPL_ISUPPORTS_INHERITED0(XULListboxAccessibleWrap,
15 XULListboxAccessible)
17 IMPL_IUNKNOWN_QUERY_HEAD(XULListboxAccessibleWrap)
18 IMPL_IUNKNOWN_QUERY_CLASS_COND(ia2AccessibleTable, IsMulticolumn());
19 IMPL_IUNKNOWN_QUERY_CLASS(AccessibleWrap)
20 IMPL_IUNKNOWN_QUERY_TAIL
22 void
23 XULListboxAccessibleWrap::Shutdown()
24 {
25 ia2AccessibleTable::mTable = nullptr;
26 XULListboxAccessible::Shutdown();
27 }
29 ////////////////////////////////////////////////////////////////////////////////
30 // XULListCellAccessibleWrap
31 ////////////////////////////////////////////////////////////////////////////////
33 NS_IMPL_ISUPPORTS_INHERITED0(XULListCellAccessibleWrap,
34 XULListCellAccessible)
36 IMPL_IUNKNOWN_INHERITED1(XULListCellAccessibleWrap,
37 HyperTextAccessibleWrap,
38 ia2AccessibleTableCell)
40 void
41 XULListCellAccessibleWrap::Shutdown()
42 {
43 ia2AccessibleTableCell::mTableCell = nullptr;
44 XULListCellAccessible::Shutdown();
45 }