Skip to content

Commit 904406a

Browse files
committed
Merge remote-tracking branch 'origin/tracking' into custom
2 parents 44f397b + 147713a commit 904406a

File tree

154 files changed

+402
-422
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+402
-422
lines changed

accessible/generic/DocAccessible.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(DocAccessible, Accessible)
159159
tmp->mARIAOwnsHash.Clear();
160160
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
161161

162-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(DocAccessible)
162+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(DocAccessible)
163163
NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
164164
NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
165165
NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)

accessible/xpcom/xpcAccessibleDocument.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(xpcAccessibleDocument,
3030
tmp->mCache.Clear();
3131
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
3232

33-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(xpcAccessibleDocument)
33+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(xpcAccessibleDocument)
3434
NS_INTERFACE_MAP_ENTRY(nsIAccessibleDocument)
3535
NS_INTERFACE_MAP_END_INHERITING(xpcAccessibleHyperText)
3636

accessible/xul/XULTreeAccessible.cpp

+5-8
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ XULTreeAccessible::~XULTreeAccessible()
7373
NS_IMPL_CYCLE_COLLECTION_INHERITED(XULTreeAccessible, Accessible,
7474
mTree, mAccessibleCache)
7575

76-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(XULTreeAccessible)
76+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(XULTreeAccessible)
7777
NS_INTERFACE_MAP_END_INHERITING(Accessible)
7878

7979
NS_IMPL_ADDREF_INHERITED(XULTreeAccessible, Accessible)
@@ -709,12 +709,9 @@ XULTreeItemAccessibleBase::~XULTreeItemAccessibleBase()
709709
NS_IMPL_CYCLE_COLLECTION_INHERITED(XULTreeItemAccessibleBase, Accessible,
710710
mTree)
711711

712-
NS_INTERFACE_TABLE_HEAD_CYCLE_COLLECTION_INHERITED(XULTreeItemAccessibleBase)
713-
NS_INTERFACE_TABLE_INHERITED(XULTreeItemAccessibleBase,
714-
XULTreeItemAccessibleBase)
715-
NS_INTERFACE_TABLE_TAIL_INHERITING(Accessible)
716-
NS_IMPL_ADDREF_INHERITED(XULTreeItemAccessibleBase, Accessible)
717-
NS_IMPL_RELEASE_INHERITED(XULTreeItemAccessibleBase, Accessible)
712+
NS_IMPL_ISUPPORTS_CYCLE_COLLECTION_INHERITED(XULTreeItemAccessibleBase,
713+
Accessible,
714+
XULTreeItemAccessibleBase)
718715

719716
////////////////////////////////////////////////////////////////////////////////
720717
// XULTreeItemAccessibleBase: Accessible
@@ -1084,7 +1081,7 @@ NS_IMPL_CYCLE_COLLECTION_INHERITED(XULTreeItemAccessible,
10841081
XULTreeItemAccessibleBase,
10851082
mColumn)
10861083

1087-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(XULTreeItemAccessible)
1084+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(XULTreeItemAccessible)
10881085
NS_INTERFACE_MAP_END_INHERITING(XULTreeItemAccessibleBase)
10891086
NS_IMPL_ADDREF_INHERITED(XULTreeItemAccessible, XULTreeItemAccessibleBase)
10901087
NS_IMPL_RELEASE_INHERITED(XULTreeItemAccessible, XULTreeItemAccessibleBase)

accessible/xul/XULTreeGridAccessible.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ NS_IMPL_CYCLE_COLLECTION_INHERITED(XULTreeGridRowAccessible,
263263
XULTreeItemAccessibleBase,
264264
mAccessibleCache)
265265

266-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(XULTreeGridRowAccessible)
266+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(XULTreeGridRowAccessible)
267267
NS_INTERFACE_MAP_END_INHERITING(XULTreeItemAccessibleBase)
268268

269269
NS_IMPL_ADDREF_INHERITED(XULTreeGridRowAccessible,
@@ -447,7 +447,7 @@ XULTreeGridCellAccessible::~XULTreeGridCellAccessible()
447447
NS_IMPL_CYCLE_COLLECTION_INHERITED(XULTreeGridCellAccessible, LeafAccessible,
448448
mTree, mColumn)
449449

450-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(XULTreeGridCellAccessible)
450+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(XULTreeGridCellAccessible)
451451
NS_INTERFACE_MAP_END_INHERITING(LeafAccessible)
452452
NS_IMPL_ADDREF_INHERITED(XULTreeGridCellAccessible, LeafAccessible)
453453
NS_IMPL_RELEASE_INHERITED(XULTreeGridCellAccessible, LeafAccessible)

dom/abort/AbortController.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ AbortSignal*
7373
AbortController::Signal()
7474
{
7575
if (!mSignal) {
76-
mSignal = new AbortSignal(this, mAborted);
76+
mSignal = new AbortSignal(mGlobal, mAborted);
7777
}
7878

7979
return mSignal;

dom/abort/AbortSignal.cpp

+19-7
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
55

66
#include "AbortSignal.h"
7-
#include "AbortController.h"
7+
88
#include "mozilla/dom/Event.h"
99
#include "mozilla/dom/AbortSignalBinding.h"
1010

@@ -15,24 +15,21 @@ NS_IMPL_CYCLE_COLLECTION_CLASS(AbortSignal)
1515

1616
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(AbortSignal,
1717
DOMEventTargetHelper)
18-
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mController)
1918
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
2019

2120
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(AbortSignal,
2221
DOMEventTargetHelper)
23-
NS_IMPL_CYCLE_COLLECTION_UNLINK(mController)
2422
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
2523

26-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(AbortSignal)
24+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(AbortSignal)
2725
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
2826

2927
NS_IMPL_ADDREF_INHERITED(AbortSignal, DOMEventTargetHelper)
3028
NS_IMPL_RELEASE_INHERITED(AbortSignal, DOMEventTargetHelper)
3129

32-
AbortSignal::AbortSignal(AbortController* aController,
30+
AbortSignal::AbortSignal(nsIGlobalObject* aGlobalObject,
3331
bool aAborted)
34-
: DOMEventTargetHelper(aController->GetParentObject())
35-
, mController(aController)
32+
: DOMEventTargetHelper(aGlobalObject)
3633
, mAborted(aAborted)
3734
{}
3835

@@ -46,6 +43,21 @@ AbortSignal::WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto)
4643
return AbortSignalBinding::Wrap(aCx, this, aGivenProto);
4744
}
4845

46+
already_AddRefed<AbortSignal> AbortSignal::Abort(GlobalObject& aGlobal) {
47+
nsCOMPtr<nsIGlobalObject> global = do_QueryInterface(aGlobal.GetAsSupports());
48+
RefPtr<AbortSignal> abortSignal = new AbortSignal(global, true);
49+
return abortSignal.forget();
50+
}
51+
52+
already_AddRefed<AbortSignal> AbortSignal::Timeout(GlobalObject& aGlobal, uint64_t aMilliseconds) {
53+
nsCOMPtr<nsIGlobalObject> global = do_QueryInterface(aGlobal.GetAsSupports());
54+
55+
// Stub implementation, just return an AbortSignal object
56+
RefPtr<AbortSignal> abortSignal = new AbortSignal(global, false);
57+
58+
return abortSignal.forget();
59+
}
60+
4961
bool
5062
AbortSignal::Aborted() const
5163
{

dom/abort/AbortSignal.h

+7-6
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
namespace mozilla {
1212
namespace dom {
1313

14-
class AbortController;
1514
class AbortSignal;
1615

1716
class AbortSignal final : public DOMEventTargetHelper
@@ -38,7 +37,7 @@ class AbortSignal final : public DOMEventTargetHelper
3837
NS_DECL_ISUPPORTS_INHERITED
3938
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(AbortSignal, DOMEventTargetHelper)
4039

41-
AbortSignal(AbortController* aController, bool aAborted);
40+
AbortSignal(nsIGlobalObject* aGlobalObject, bool aAborted);
4241
explicit AbortSignal(bool aAborted);
4342

4443
JSObject*
@@ -47,10 +46,14 @@ class AbortSignal final : public DOMEventTargetHelper
4746
bool
4847
Aborted() const;
4948

50-
void
51-
Abort();
49+
void Abort();
50+
void Timeout();
5251

5352
IMPL_EVENT_HANDLER(abort);
53+
IMPL_EVENT_HANDLER(timeout);
54+
55+
static already_AddRefed<AbortSignal> Abort(GlobalObject& aGlobal);
56+
static already_AddRefed<AbortSignal> Timeout(GlobalObject& aGlobal, uint64_t aMilliseconds);
5457

5558
void
5659
AddFollower(Follower* aFollower);
@@ -61,8 +64,6 @@ class AbortSignal final : public DOMEventTargetHelper
6164
private:
6265
~AbortSignal() = default;
6366

64-
RefPtr<AbortController> mController;
65-
6667
// Raw pointers. Follower unregisters itself in the DTOR.
6768
nsTArray<Follower*> mFollowers;
6869

dom/animation/Animation.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ NS_IMPL_CYCLE_COLLECTION_INHERITED(Animation, DOMEventTargetHelper,
3535
NS_IMPL_ADDREF_INHERITED(Animation, DOMEventTargetHelper)
3636
NS_IMPL_RELEASE_INHERITED(Animation, DOMEventTargetHelper)
3737

38-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(Animation)
38+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(Animation)
3939
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
4040

4141
JSObject*

dom/animation/DocumentTimeline.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(DocumentTimeline,
3434
AnimationTimeline)
3535
NS_IMPL_CYCLE_COLLECTION_TRACE_END
3636

37-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(DocumentTimeline)
37+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(DocumentTimeline)
3838
NS_INTERFACE_MAP_END_INHERITING(AnimationTimeline)
3939

4040
NS_IMPL_ADDREF_INHERITED(DocumentTimeline, AnimationTimeline)

dom/animation/KeyframeEffectReadOnly.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(KeyframeEffectReadOnly,
4444
AnimationEffectReadOnly)
4545
NS_IMPL_CYCLE_COLLECTION_TRACE_END
4646

47-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(KeyframeEffectReadOnly)
47+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(KeyframeEffectReadOnly)
4848
NS_INTERFACE_MAP_END_INHERITING(AnimationEffectReadOnly)
4949

5050
NS_IMPL_ADDREF_INHERITED(KeyframeEffectReadOnly, AnimationEffectReadOnly)

dom/base/DOMCursor.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ namespace dom {
1212
NS_IMPL_CYCLE_COLLECTION_INHERITED(DOMCursor, DOMRequest,
1313
mCallback)
1414

15-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(DOMCursor)
15+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(DOMCursor)
1616
NS_INTERFACE_MAP_ENTRY(nsIDOMDOMCursor)
1717
NS_INTERFACE_MAP_END_INHERITING(DOMRequest)
1818

dom/base/DOMRequest.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(DOMRequest,
6666
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mResult)
6767
NS_IMPL_CYCLE_COLLECTION_TRACE_END
6868

69-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(DOMRequest)
69+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(DOMRequest)
7070
NS_INTERFACE_MAP_ENTRY(nsIDOMDOMRequest)
7171
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
7272

dom/base/EventSource.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -2112,7 +2112,7 @@ EventSource::IsCertainlyAliveForCC() const
21122112
return mKeepingAlive;
21132113
}
21142114

2115-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(EventSource)
2115+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(EventSource)
21162116
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
21172117

21182118
NS_IMPL_ADDREF_INHERITED(EventSource, DOMEventTargetHelper)

dom/base/FileReader.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(FileReader,
6767
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mResultArrayBuffer)
6868
NS_IMPL_CYCLE_COLLECTION_TRACE_END
6969

70-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(FileReader)
70+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(FileReader)
7171
NS_INTERFACE_MAP_ENTRY(nsITimerCallback)
7272
NS_INTERFACE_MAP_ENTRY(nsIInputStreamCallback)
7373
NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)

dom/base/ScreenOrientation.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ NS_IMPL_CYCLE_COLLECTION_INHERITED(ScreenOrientation,
2424
DOMEventTargetHelper,
2525
mScreen);
2626

27-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(ScreenOrientation)
27+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ScreenOrientation)
2828
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
2929

3030
NS_IMPL_ADDREF_INHERITED(ScreenOrientation, DOMEventTargetHelper)

dom/base/ShadowRoot.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ShadowRoot)
4646
tmp->mIdentifierMap.Clear();
4747
NS_IMPL_CYCLE_COLLECTION_UNLINK_END_INHERITED(DocumentFragment)
4848

49-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(ShadowRoot)
49+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ShadowRoot)
5050
NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIContent)
5151
NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
5252
NS_INTERFACE_MAP_END_INHERITING(DocumentFragment)

dom/base/WebSocket.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -1424,7 +1424,7 @@ WebSocket::IsCertainlyAliveForCC() const
14241424
return mKeepingAlive;
14251425
}
14261426

1427-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(WebSocket)
1427+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(WebSocket)
14281428
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
14291429

14301430
NS_IMPL_ADDREF_INHERITED(WebSocket, DOMEventTargetHelper)

dom/base/nsContentIterator.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -1233,7 +1233,7 @@ class nsContentSubtreeIterator : public nsContentIterator
12331233
NS_IMPL_ADDREF_INHERITED(nsContentSubtreeIterator, nsContentIterator)
12341234
NS_IMPL_RELEASE_INHERITED(nsContentSubtreeIterator, nsContentIterator)
12351235

1236-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsContentSubtreeIterator)
1236+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsContentSubtreeIterator)
12371237
NS_INTERFACE_MAP_END_INHERITING(nsContentIterator)
12381238

12391239
NS_IMPL_CYCLE_COLLECTION_INHERITED(nsContentSubtreeIterator, nsContentIterator,

dom/base/nsContentList.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ nsBaseContentList::IndexOf(nsIContent* aContent)
137137
NS_IMPL_CYCLE_COLLECTION_INHERITED(nsSimpleContentList, nsBaseContentList,
138138
mRoot)
139139

140-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsSimpleContentList)
140+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsSimpleContentList)
141141
NS_INTERFACE_MAP_END_INHERITING(nsBaseContentList)
142142

143143

dom/base/nsContentList.h

+5
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,7 @@ class nsContentList : public nsBaseContentList,
260260

261261
// nsWrapperCache
262262
using nsWrapperCache::GetWrapperPreserveColor;
263+
using nsWrapperCache::PreserveWrapper;
263264
virtual JSObject* WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto) override;
264265
protected:
265266
virtual ~nsContentList();
@@ -268,6 +269,10 @@ class nsContentList : public nsBaseContentList,
268269
{
269270
return nsWrapperCache::GetWrapperPreserveColor();
270271
}
272+
virtual void PreserveWrapperInternal(nsISupports* aScriptObjectHolder) override
273+
{
274+
nsWrapperCache::PreserveWrapper(aScriptObjectHolder);
275+
}
271276
public:
272277

273278
// nsIDOMHTMLCollection

dom/base/nsDOMDataChannel.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_END
6767
NS_IMPL_ADDREF_INHERITED(nsDOMDataChannel, DOMEventTargetHelper)
6868
NS_IMPL_RELEASE_INHERITED(nsDOMDataChannel, DOMEventTargetHelper)
6969

70-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsDOMDataChannel)
70+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsDOMDataChannel)
7171
NS_INTERFACE_MAP_ENTRY(nsIDOMDataChannel)
7272
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
7373

dom/base/nsGlobalWindow.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -13929,7 +13929,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(nsGlobalChromeWindow,
1392913929
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
1393013930

1393113931
// QueryInterface implementation for nsGlobalChromeWindow
13932-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsGlobalChromeWindow)
13932+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsGlobalChromeWindow)
1393313933
NS_INTERFACE_MAP_ENTRY(nsIDOMChromeWindow)
1393413934
NS_INTERFACE_MAP_END_INHERITING(nsGlobalWindow)
1393513935

dom/base/nsInProcessTabChildGlobal.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(nsInProcessTabChildGlobal,
162162
tmp->UnlinkHostObjectURIs();
163163
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
164164

165-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsInProcessTabChildGlobal)
165+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsInProcessTabChildGlobal)
166166
NS_INTERFACE_MAP_ENTRY(nsIMessageListenerManager)
167167
NS_INTERFACE_MAP_ENTRY(nsIMessageSender)
168168
NS_INTERFACE_MAP_ENTRY(nsISyncMessageSender)

dom/base/nsScreen.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ nsScreen::~nsScreen()
4949

5050

5151
// QueryInterface implementation for nsScreen
52-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsScreen)
52+
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsScreen)
5353
NS_INTERFACE_MAP_ENTRY(nsIDOMScreen)
5454
NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
5555

dom/base/nsStyledElement.cpp

+5-3
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,11 @@
2525
using namespace mozilla;
2626
using namespace mozilla::dom;
2727

28-
NS_IMPL_QUERY_INTERFACE_INHERITED(nsStyledElement,
29-
nsStyledElementBase,
30-
nsStyledElement)
28+
// Using the CC variant of this, even though this class does not define
29+
// a new CC participant, to make QIing to the CC interfaces faster.
30+
NS_IMPL_QUERY_INTERFACE_CYCLE_COLLECTION_INHERITED(nsStyledElement,
31+
nsStyledElementBase,
32+
nsStyledElement)
3133

3234
//----------------------------------------------------------------------
3335
// nsIContent methods

dom/base/nsTextNode.cpp

+7-2
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,13 @@ nsTextNode::~nsTextNode()
9797
{
9898
}
9999

100-
NS_IMPL_ISUPPORTS_INHERITED(nsTextNode, nsGenericDOMDataNode, nsIDOMNode,
101-
nsIDOMText, nsIDOMCharacterData)
100+
// Using the CC variant of this, even though this class does not define
101+
// a new CC participant, to make QIing to the CC interfaces faster.
102+
NS_IMPL_ISUPPORTS_CYCLE_COLLECTION_INHERITED(nsTextNode,
103+
nsGenericDOMDataNode,
104+
nsIDOMNode,
105+
nsIDOMText,
106+
nsIDOMCharacterData)
102107

103108
JSObject*
104109
nsTextNode::WrapNode(JSContext *aCx, JS::Handle<JSObject*> aGivenProto)

dom/base/nsWrapperCache.cpp

-8
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77

88
#include "js/Class.h"
99
#include "js/Proxy.h"
10-
#include "mozilla/dom/DOMJSProxyHandler.h"
1110
#include "mozilla/CycleCollectedJSContext.h"
1211
#include "mozilla/HoldDropJSObjects.h"
1312
#include "nsCycleCollectionTraversalCallback.h"
@@ -49,13 +48,6 @@ void
4948
nsWrapperCache::ReleaseWrapper(void* aScriptObjectHolder)
5049
{
5150
if (PreservingWrapper()) {
52-
// PreserveWrapper puts new DOM bindings in the JS holders hash, but they
53-
// can also be in the DOM expando hash, so we need to try to remove them
54-
// from both here.
55-
JSObject* obj = GetWrapperPreserveColor();
56-
if (IsDOMBinding() && obj && js::IsProxy(obj)) {
57-
DOMProxyHandler::ClearExternalRefsForWrapperRelease(obj);
58-
}
5951
SetPreservingWrapper(false);
6052
cyclecollector::DropJSObjectsImpl(aScriptObjectHolder);
6153
}

0 commit comments

Comments
 (0)