From b7f890e02e6bf24db172881d6da910e70c7586fe Mon Sep 17 00:00:00 2001 From: Gaming4JC Date: Sat, 18 Jan 2020 20:35:11 -0500 Subject: Bug 1410790 - Add more assertion in CustomElementData::SetCustomElementDefinition and GetCustomElementDefinition; This is a follow-up patch for bug 1392970. Since we only set CustomElementDefinition on a custom element which is custom, we could add more assertion to ensure that. Tag UXP Issue #1344 --- dom/base/CustomElementRegistry.h | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'dom/base/CustomElementRegistry.h') diff --git a/dom/base/CustomElementRegistry.h b/dom/base/CustomElementRegistry.h index 867c92647..d3dfef682 100644 --- a/dom/base/CustomElementRegistry.h +++ b/dom/base/CustomElementRegistry.h @@ -130,24 +130,16 @@ struct CustomElementData // e.g., create an element, insert a node. AutoTArray, 3> mReactionQueue; - RefPtr mCustomElementDefinition; - - void - SetCustomElementDefinition(CustomElementDefinition* aDefinition) - { - MOZ_ASSERT(!mCustomElementDefinition); - - mCustomElementDefinition = aDefinition; - } + void SetCustomElementDefinition(CustomElementDefinition* aDefinition); + CustomElementDefinition* GetCustomElementDefinition(); - CustomElementDefinition* - GetCustomElementDefinition() - { - return mCustomElementDefinition; - } + void Traverse(nsCycleCollectionTraversalCallback& aCb) const; + void Unlink(); private: virtual ~CustomElementData() {} + + RefPtr mCustomElementDefinition; }; #define ALEADY_CONSTRUCTED_MARKER nullptr @@ -167,7 +159,8 @@ struct CustomElementDefinition mozilla::dom::LifecycleCallbacks* aCallbacks, uint32_t aDocOrder); - // The type (name) for this custom element. + // The type (name) for this custom element, for