Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / Source / core / dom / custom / CustomElementRegistry.cpp
index eedbfaa..a3b9775 100644 (file)
@@ -81,18 +81,17 @@ CustomElementDefinition* CustomElementRegistry::registerElement(Document* docume
         return 0;
     }
 
+    if (m_registeredTypeNames.contains(type)) {
+        CustomElementException::throwException(CustomElementException::TypeAlreadyRegistered, type, exceptionState);
+        return 0;
+    }
+
     QualifiedName tagName = QualifiedName::null();
     if (!constructorBuilder->validateOptions(type, tagName, exceptionState))
         return 0;
 
     ASSERT(tagName.namespaceURI() == HTMLNames::xhtmlNamespaceURI || tagName.namespaceURI() == SVGNames::svgNamespaceURI);
 
-    // FIXME: This should be done earlier in validateOptions.
-    if (m_registeredTypeNames.contains(type)) {
-        CustomElementException::throwException(CustomElementException::TypeAlreadyRegistered, type, exceptionState);
-        return 0;
-    }
-
     ASSERT(!observer.registrationContextWentAway());
 
     RefPtr<CustomElementLifecycleCallbacks> lifecycleCallbacks = constructorBuilder->createCallbacks();