|
@@ -39,12 +39,12 @@ void TreeWalker::visit_edges(Cell::Visitor& visitor)
|
|
|
}
|
|
|
|
|
|
// https://dom.spec.whatwg.org/#dom-document-createtreewalker
|
|
|
-JS::NonnullGCPtr<TreeWalker> TreeWalker::create(Node& root, unsigned what_to_show, JS::GCPtr<NodeFilter> filter)
|
|
|
+WebIDL::ExceptionOr<JS::NonnullGCPtr<TreeWalker>> TreeWalker::create(Node& root, unsigned what_to_show, JS::GCPtr<NodeFilter> filter)
|
|
|
{
|
|
|
// 1. Let walker be a new TreeWalker object.
|
|
|
// 2. Set walker’s root and walker’s current to root.
|
|
|
auto& realm = root.realm();
|
|
|
- auto walker = realm.heap().allocate<TreeWalker>(realm, root).release_allocated_value_but_fixme_should_propagate_errors();
|
|
|
+ auto walker = MUST_OR_THROW_OOM(realm.heap().allocate<TreeWalker>(realm, root));
|
|
|
|
|
|
// 3. Set walker’s whatToShow to whatToShow.
|
|
|
walker->m_what_to_show = what_to_show;
|