summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/bindings/core/v8/script_custom_element_definition.cc
diff options
context:
space:
mode:
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.cc9
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;