From d53d8cacec58ed6355e837dba60f2c9e5b3d6e00 Mon Sep 17 00:00:00 2001 From: Kenneth Myhra Date: Sun, 12 Feb 2023 22:47:47 +0100 Subject: [PATCH] LibWeb: Make factory method of CSS::CSSImportRule fallible --- Userland/Libraries/LibWeb/CSS/CSSImportRule.cpp | 4 ++-- Userland/Libraries/LibWeb/CSS/CSSImportRule.h | 2 +- Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Userland/Libraries/LibWeb/CSS/CSSImportRule.cpp b/Userland/Libraries/LibWeb/CSS/CSSImportRule.cpp index a4bd2c95a9..4eaaa97de4 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSImportRule.cpp +++ b/Userland/Libraries/LibWeb/CSS/CSSImportRule.cpp @@ -18,10 +18,10 @@ namespace Web::CSS { -CSSImportRule* CSSImportRule::create(AK::URL url, DOM::Document& document) +WebIDL::ExceptionOr> CSSImportRule::create(AK::URL url, DOM::Document& document) { auto& realm = document.realm(); - return realm.heap().allocate(realm, move(url), document).release_allocated_value_but_fixme_should_propagate_errors(); + return MUST_OR_THROW_OOM(realm.heap().allocate(realm, move(url), document)); } CSSImportRule::CSSImportRule(AK::URL url, DOM::Document& document) diff --git a/Userland/Libraries/LibWeb/CSS/CSSImportRule.h b/Userland/Libraries/LibWeb/CSS/CSSImportRule.h index c17b0c2332..caf436c90a 100644 --- a/Userland/Libraries/LibWeb/CSS/CSSImportRule.h +++ b/Userland/Libraries/LibWeb/CSS/CSSImportRule.h @@ -21,7 +21,7 @@ class CSSImportRule final WEB_PLATFORM_OBJECT(CSSImportRule, CSSRule); public: - static CSSImportRule* create(AK::URL, DOM::Document&); + static WebIDL::ExceptionOr> create(AK::URL, DOM::Document&); virtual ~CSSImportRule() = default; diff --git a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp index a0e6514595..c5bc1f6d33 100644 --- a/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp +++ b/Userland/Libraries/LibWeb/CSS/Parser/Parser.cpp @@ -3040,7 +3040,7 @@ CSSRule* Parser::convert_to_rule(NonnullRefPtr rule) } if (url.has_value()) - return CSSImportRule::create(url.value(), const_cast(*m_context.document())); + return CSSImportRule::create(url.value(), const_cast(*m_context.document())).release_value_but_fixme_should_propagate_errors(); dbgln_if(CSS_PARSER_DEBUG, "Unable to parse url from @import rule"); return {}; }