diff options
author | Gaming4JC <g4jc@hyperbola.info> | 2020-01-04 18:59:37 -0500 |
---|---|---|
committer | Gaming4JC <g4jc@hyperbola.info> | 2020-01-26 15:50:17 -0500 |
commit | 9d51b9d06a16b4725e4540a6424c71f6a1ee94c3 (patch) | |
tree | 2d34a6be09f37edf133ccbad415c7f24924b2bc9 /dom/base/nsDocument.cpp | |
parent | e86aac28b8f450cc99836b07a5c0ffddb59f222f (diff) | |
download | UXP-9d51b9d06a16b4725e4540a6424c71f6a1ee94c3.tar UXP-9d51b9d06a16b4725e4540a6424c71f6a1ee94c3.tar.gz UXP-9d51b9d06a16b4725e4540a6424c71f6a1ee94c3.tar.lz UXP-9d51b9d06a16b4725e4540a6424c71f6a1ee94c3.tar.xz UXP-9d51b9d06a16b4725e4540a6424c71f6a1ee94c3.zip |
Creating customized built-in elements without relevant definitions registered first shouldn't throw NotFoundError;
per spec change: https://github.com/w3c/webcomponents/issues/608
Tag UXP Issue #1344
Diffstat (limited to 'dom/base/nsDocument.cpp')
-rw-r--r-- | dom/base/nsDocument.cpp | 40 |
1 files changed, 0 insertions, 40 deletions
diff --git a/dom/base/nsDocument.cpp b/dom/base/nsDocument.cpp index fa40c41ac..a0857faf8 100644 --- a/dom/base/nsDocument.cpp +++ b/dom/base/nsDocument.cpp @@ -5395,14 +5395,6 @@ nsDocument::CreateElement(const nsAString& aTagName, } const nsString* is = nullptr; - if (aOptions.IsElementCreationOptions()) { - // Throw NotFoundError if 'is' is not-null and definition is null - is = CheckCustomElementName(aOptions.GetAsElementCreationOptions(), - needsLowercase ? lcTagName : aTagName, mDefaultElementType, rv); - if (rv.Failed()) { - return nullptr; - } - } RefPtr<Element> elem = CreateElem( needsLowercase ? lcTagName : aTagName, nullptr, mDefaultElementType, is); @@ -5443,14 +5435,6 @@ nsDocument::CreateElementNS(const nsAString& aNamespaceURI, } const nsString* is = nullptr; - if (aOptions.IsElementCreationOptions()) { - // Throw NotFoundError if 'is' is not-null and definition is null - is = CheckCustomElementName(aOptions.GetAsElementCreationOptions(), - aQualifiedName, nodeInfo->NamespaceID(), rv); - if (rv.Failed()) { - return nullptr; - } - } nsCOMPtr<Element> element; rv = NS_NewElement(getter_AddRefs(element), nodeInfo.forget(), @@ -12757,30 +12741,6 @@ nsIDocument::UpdateStyleBackendType() #endif } -const nsString* -nsDocument::CheckCustomElementName(const ElementCreationOptions& aOptions, - const nsAString& aLocalName, - uint32_t aNamespaceID, - ErrorResult& rv) -{ - // only check aOptions if 'is' is passed and the webcomponents preference - // is enabled - if (!aOptions.mIs.WasPassed() || - !CustomElementRegistry::IsCustomElementEnabled()) { - return nullptr; - } - - const nsString* is = &aOptions.mIs.Value(); - - // Throw NotFoundError if 'is' is not-null and definition is null - if (!nsContentUtils::LookupCustomElementDefinition(this, aLocalName, - aNamespaceID, is)) { - rv.Throw(NS_ERROR_DOM_NOT_FOUND_ERR); - } - - return is; -} - Selection* nsIDocument::GetSelection(ErrorResult& aRv) { |