diff options
author | Gaming4JC <g4jc@hyperbola.info> | 2020-01-05 18:48:51 -0500 |
---|---|---|
committer | Gaming4JC <g4jc@hyperbola.info> | 2020-01-26 15:50:32 -0500 |
commit | 1aa6cdcc1d06dbf5a59ff8f741c0d6185c3517c1 (patch) | |
tree | 5a7aeb155136a1cfc133ce37702e231c87a8e7be /dom/base | |
parent | 2cbd6d3699a07f10e709c1408fbc65b503478a75 (diff) | |
download | uxp-1aa6cdcc1d06dbf5a59ff8f741c0d6185c3517c1.tar.gz |
Bug 1352290 - Add assertion to CustomElementReactionsStack::Enqueue to ensure upgrade reactions aren't scheduled to BackupQueue;
Tag UXP Issue #1344
Diffstat (limited to 'dom/base')
-rw-r--r-- | dom/base/CustomElementRegistry.cpp | 2 | ||||
-rw-r--r-- | dom/base/CustomElementRegistry.h | 13 |
2 files changed, 15 insertions, 0 deletions
diff --git a/dom/base/CustomElementRegistry.cpp b/dom/base/CustomElementRegistry.cpp index fc6ac28772..200668f9e0 100644 --- a/dom/base/CustomElementRegistry.cpp +++ b/dom/base/CustomElementRegistry.cpp @@ -1045,6 +1045,8 @@ CustomElementReactionsStack::Enqueue(Element* aElement, // If the custom element reactions stack is empty, then: // Add element to the backup element queue. + MOZ_ASSERT(!aReaction->IsUpgradeReaction(), + "Upgrade reaction should not be scheduled to backup queue"); mBackupQueue.AppendElement(aElement); elementData->mReactionQueue.AppendElement(aReaction); diff --git a/dom/base/CustomElementRegistry.h b/dom/base/CustomElementRegistry.h index 674c653ab7..867c92647b 100644 --- a/dom/base/CustomElementRegistry.h +++ b/dom/base/CustomElementRegistry.h @@ -217,6 +217,16 @@ public: virtual void Traverse(nsCycleCollectionTraversalCallback& aCb) const { } + +#if DEBUG + bool IsUpgradeReaction() + { + return mIsUpgradeReaction; + } + +protected: + bool mIsUpgradeReaction = false; +#endif }; class CustomElementUpgradeReaction final : public CustomElementReaction @@ -225,6 +235,9 @@ public: explicit CustomElementUpgradeReaction(CustomElementDefinition* aDefinition) : mDefinition(aDefinition) { +#if DEBUG + mIsUpgradeReaction = true; +#endif } private: |