1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-24 15:47:42 +00:00

LibWeb: Make factory method of CSS::CSSFontFaceRule fallible

This commit is contained in:
Kenneth Myhra 2023-02-12 22:44:04 +01:00 committed by Linus Groh
parent 471ad7ba01
commit ff8495de35
3 changed files with 5 additions and 4 deletions

View file

@ -9,12 +9,13 @@
#include <LibWeb/Bindings/Intrinsics.h>
#include <LibWeb/CSS/CSSFontFaceRule.h>
#include <LibWeb/CSS/Serialize.h>
#include <LibWeb/WebIDL/ExceptionOr.h>
namespace Web::CSS {
CSSFontFaceRule* CSSFontFaceRule::create(JS::Realm& realm, FontFace&& font_face)
WebIDL::ExceptionOr<JS::NonnullGCPtr<CSSFontFaceRule>> CSSFontFaceRule::create(JS::Realm& realm, FontFace&& font_face)
{
return realm.heap().allocate<CSSFontFaceRule>(realm, realm, move(font_face)).release_allocated_value_but_fixme_should_propagate_errors();
return MUST_OR_THROW_OOM(realm.heap().allocate<CSSFontFaceRule>(realm, realm, move(font_face)));
}
CSSFontFaceRule::CSSFontFaceRule(JS::Realm& realm, FontFace&& font_face)

View file

@ -16,7 +16,7 @@ class CSSFontFaceRule final : public CSSRule {
WEB_PLATFORM_OBJECT(CSSFontFaceRule, CSSRule);
public:
static CSSFontFaceRule* create(JS::Realm&, FontFace&&);
static WebIDL::ExceptionOr<JS::NonnullGCPtr<CSSFontFaceRule>> create(JS::Realm&, FontFace&&);
virtual ~CSSFontFaceRule() override = default;

View file

@ -5394,7 +5394,7 @@ CSSRule* Parser::parse_font_face_rule(TokenStream<ComponentValue>& tokens)
unicode_range.empend(0x0u, 0x10FFFFu);
}
return CSSFontFaceRule::create(m_context.realm(), FontFace { font_family.release_value(), move(src), move(unicode_range) });
return CSSFontFaceRule::create(m_context.realm(), FontFace { font_family.release_value(), move(src), move(unicode_range) }).release_value_but_fixme_should_propagate_errors();
}
Vector<FontFace::Source> Parser::parse_font_face_src(TokenStream<ComponentValue>& component_values)