Use TypeError instead of InvalidState for exception.

Addresses Issue #23202
This commit is contained in:
gatowololo 2019-06-06 16:59:02 -07:00
parent 1e158bbfae
commit 15c06b1b26
5 changed files with 10 additions and 29 deletions

View file

@ -182,7 +182,12 @@ where
DomRoot::downcast(element).ok_or(Error::InvalidState)
},
// Step 10
Some(ConstructionStackEntry::AlreadyConstructedMarker) => Err(Error::InvalidState),
Some(ConstructionStackEntry::AlreadyConstructedMarker) => {
let s = "Top of construction stack marked AlreadyConstructed due to \
a custom element constructor constructing itself after super()"
.to_string();
Err(Error::Type(s))
},
}
}

View file

@ -680,7 +680,9 @@ fn run_upgrade_constructor(
return Err(Error::JSFailed);
}
if !same {
return Err(Error::InvalidState);
return Err(Error::Type(
"Returned element is not SameValue as the upgraded element".to_string(),
));
}
}
Ok(())

View file

@ -13,7 +13,7 @@ interface CustomElementRegistry {
Promise<void> whenDefined(DOMString name);
};
callback CustomElementConstructor = any();
callback CustomElementConstructor = HTMLElement();
dictionary ElementDefinitionOptions {
DOMString extends;