diff --git a/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.cpp b/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.cpp index d70f93eb9f..a8acbd2559 100644 --- a/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.cpp +++ b/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.cpp @@ -13,9 +13,9 @@ namespace Web::DOM { -JS::NonnullGCPtr AccessibilityTreeNode::create(Document* document, DOM::Node const* value) +WebIDL::ExceptionOr> AccessibilityTreeNode::create(Document* document, DOM::Node const* value) { - return *document->heap().allocate(document->realm(), value).release_allocated_value_but_fixme_should_propagate_errors(); + return MUST_OR_THROW_OOM(document->heap().allocate(document->realm(), value)); } AccessibilityTreeNode::AccessibilityTreeNode(JS::GCPtr value) diff --git a/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.h b/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.h index 4710ef04f0..fc0fc9235d 100644 --- a/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.h +++ b/Userland/Libraries/LibWeb/DOM/AccessibilityTreeNode.h @@ -17,7 +17,7 @@ namespace Web::DOM { class AccessibilityTreeNode final : public JS::Cell { JS_CELL(AccessibilityTreeNode, JS::Cell) public: - static JS::NonnullGCPtr create(Document*, DOM::Node const*); + static WebIDL::ExceptionOr> create(Document*, DOM::Node const*); virtual ~AccessibilityTreeNode() override = default; JS::GCPtr value() const { return m_value; } diff --git a/Userland/Libraries/LibWeb/DOM/Document.cpp b/Userland/Libraries/LibWeb/DOM/Document.cpp index f91facea61..a76f45e723 100644 --- a/Userland/Libraries/LibWeb/DOM/Document.cpp +++ b/Userland/Libraries/LibWeb/DOM/Document.cpp @@ -2350,7 +2350,7 @@ JS::NonnullGCPtr Document::appropriate_template_contents_owner_do DeprecatedString Document::dump_accessibility_tree_as_json() { StringBuilder builder; - auto accessibility_tree = AccessibilityTreeNode::create(this, nullptr); + auto accessibility_tree = AccessibilityTreeNode::create(this, nullptr).release_value_but_fixme_should_propagate_errors(); build_accessibility_tree(*&accessibility_tree); auto json = MUST(JsonObjectSerializer<>::try_create(builder)); diff --git a/Userland/Libraries/LibWeb/DOM/Node.cpp b/Userland/Libraries/LibWeb/DOM/Node.cpp index 08165a3d9d..9ee0a1f330 100644 --- a/Userland/Libraries/LibWeb/DOM/Node.cpp +++ b/Userland/Libraries/LibWeb/DOM/Node.cpp @@ -1565,7 +1565,7 @@ void Node::build_accessibility_tree(AccessibilityTreeNode& parent) const return; if (element->include_in_accessibility_tree()) { - auto current_node = AccessibilityTreeNode::create(const_cast(&this->document()), this); + auto current_node = AccessibilityTreeNode::create(const_cast(&this->document()), this).release_value_but_fixme_should_propagate_errors(); parent.append_child(current_node); if (has_child_nodes()) { for_each_child([¤t_node](DOM::Node& child) { @@ -1578,7 +1578,7 @@ void Node::build_accessibility_tree(AccessibilityTreeNode& parent) const }); } } else if (is_text()) { - parent.append_child(AccessibilityTreeNode::create(const_cast(&this->document()), this)); + parent.append_child(AccessibilityTreeNode::create(const_cast(&this->document()), this).release_value_but_fixme_should_propagate_errors()); if (has_child_nodes()) { for_each_child([&parent](DOM::Node& child) { child.build_accessibility_tree(parent);