diff options
Diffstat (limited to 'dom/base')
-rw-r--r-- | dom/base/nsNodeUtils.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/dom/base/nsNodeUtils.cpp b/dom/base/nsNodeUtils.cpp index 862b5db14..3670b5438 100644 --- a/dom/base/nsNodeUtils.cpp +++ b/dom/base/nsNodeUtils.cpp @@ -486,12 +486,12 @@ nsNodeUtils::CloneAndAdopt(nsINode *aNode, bool aClone, bool aDeep, CustomElementDefinition* definition = nullptr; RefPtr<nsIAtom> tagAtom = nodeInfo->NameAtom(); if (nsContentUtils::IsCustomElementName(tagAtom)) { + elem->SetCustomElementData(new CustomElementData(tagAtom)); definition = nsContentUtils::LookupCustomElementDefinition(nodeInfo->GetDocument(), nodeInfo->LocalName(), nodeInfo->NamespaceID()); if (definition) { - elem->SetCustomElementData(new CustomElementData(tagAtom)); nsContentUtils::EnqueueUpgradeReaction(elem, definition); } } else { @@ -500,14 +500,14 @@ nsNodeUtils::CloneAndAdopt(nsINode *aNode, bool aClone, bool aDeep, nsAutoString extension; if (elem->GetAttr(kNameSpaceID_None, nsGkAtoms::is, extension) && !extension.IsEmpty()) { + RefPtr<nsAtom> typeAtom = NS_Atomize(extension); + elem->SetCustomElementData(new CustomElementData(typeAtom)); definition = nsContentUtils::LookupCustomElementDefinition(nodeInfo->GetDocument(), nodeInfo->LocalName(), nodeInfo->NamespaceID(), &extension); if (definition) { - RefPtr<nsIAtom> typeAtom = NS_Atomize(extension); - elem->SetCustomElementData(new CustomElementData(typeAtom)); nsContentUtils::EnqueueUpgradeReaction(elem, definition); } } @@ -549,7 +549,7 @@ nsNodeUtils::CloneAndAdopt(nsINode *aNode, bool aClone, bool aDeep, // shadow-including inclusive descendants that is custom. Element* element = aNode->IsElement() ? aNode->AsElement() : nullptr; if (element) { - RefPtr<CustomElementData> data = element->GetCustomElementData(); + CustomElementData* data = element->GetCustomElementData(); if (data && data->mState == CustomElementData::State::eCustom) { LifecycleAdoptedCallbackArgs args = { oldDoc, |