diff options
Diffstat (limited to 'chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc')
-rw-r--r-- | chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc b/chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc index 075b20837c7..402e5370fd8 100644 --- a/chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc +++ b/chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc @@ -137,6 +137,7 @@ HTMLElement* ScriptCustomElementDefinition::HandleCreateElementSyncException( HTMLElement* ScriptCustomElementDefinition::CreateAutonomousCustomElementSync( Document& document, const QualifiedName& tag_name) { + DCHECK(CustomElement::ShouldCreateCustomElement(tag_name)) << tag_name; if (!script_state_->ContextIsValid()) return CustomElement::CreateFailedElement(document, tag_name); ScriptState::Scope scope(script_state_); @@ -219,15 +220,13 @@ bool ScriptCustomElementDefinition::RunConstructor(Element& element) { if (try_catch.HasCaught()) return false; - // To report InvalidStateError Exception, when the constructor returns some - // different object + // Report a TypeError Exception if the constructor returns a different object. if (result != &element) { const String& message = "custom element constructors must call super() first and must " "not return a different object"; - v8::Local<v8::Value> exception = V8ThrowDOMException::CreateOrEmpty( - script_state_->GetIsolate(), DOMExceptionCode::kInvalidStateError, - message); + v8::Local<v8::Value> exception = + V8ThrowException::CreateTypeError(script_state_->GetIsolate(), message); if (!exception.IsEmpty()) V8ScriptRunner::ReportException(isolate, exception); return false; |