diff --git a/Userland/Libraries/LibWeb/DOM/Document.cpp b/Userland/Libraries/LibWeb/DOM/Document.cpp index a76f45e723..e7e5a75afe 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.cpp +++ b/Userland/Libraries/LibWeb/DOM/Document.cpp @@ -1953,7 +1953,7 @@ JS::NonnullGCPtr Document::create_node_iterator(Node& root, unsign // https://dom.spec.whatwg.org/#dom-document-createtreewalker JS::NonnullGCPtr Document::create_tree_walker(Node& root, unsigned what_to_show, JS::GCPtr filter) { - return TreeWalker::create(root, what_to_show, filter); + return TreeWalker::create(root, what_to_show, filter).release_value_but_fixme_should_propagate_errors(); } void Document::register_node_iterator(Badge, NodeIterator& node_iterator) diff --git a/Userland/Libraries/LibWeb/DOM/TreeWalker.cpp b/Userland/Libraries/LibWeb/DOM/TreeWalker.cpp index bd4ba764cf..a163bac8c0 100644 --- a/Userland/Libraries/LibWeb/DOM/TreeWalker.cpp +++ b/Userland/Libraries/LibWeb/DOM/TreeWalker.cpp @@ -39,12 +39,12 @@ void TreeWalker::visit_edges(Cell::Visitor& visitor) } // https://dom.spec.whatwg.org/#dom-document-createtreewalker -JS::NonnullGCPtr TreeWalker::create(Node& root, unsigned what_to_show, JS::GCPtr filter) +WebIDL::ExceptionOr> TreeWalker::create(Node& root, unsigned what_to_show, JS::GCPtr 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(realm, root).release_allocated_value_but_fixme_should_propagate_errors(); + auto walker = MUST_OR_THROW_OOM(realm.heap().allocate(realm, root)); // 3. Set walker’s whatToShow to whatToShow. walker->m_what_to_show = what_to_show; diff --git a/Userland/Libraries/LibWeb/DOM/TreeWalker.h b/Userland/Libraries/LibWeb/DOM/TreeWalker.h index 96b84cae68..b2dbff68d1 100644 --- a/Userland/Libraries/LibWeb/DOM/TreeWalker.h +++ b/Userland/Libraries/LibWeb/DOM/TreeWalker.h @@ -15,7 +15,7 @@ class TreeWalker final : public Bindings::PlatformObject { WEB_PLATFORM_OBJECT(TreeWalker, Bindings::PlatformObject); public: - static JS::NonnullGCPtr create(Node& root, unsigned what_to_show, JS::GCPtr); + static WebIDL::ExceptionOr> create(Node& root, unsigned what_to_show, JS::GCPtr); virtual ~TreeWalker() override;