diff --git a/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.cpp b/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.cpp
index e47afddcf4..fd095e8ab2 100644
--- a/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.cpp
+++ b/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.cpp
@@ -9,12 +9,12 @@
namespace Web::HTML {
-PageTransitionEvent* PageTransitionEvent::create(JS::Realm& realm, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init)
+WebIDL::ExceptionOr> PageTransitionEvent::create(JS::Realm& realm, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init)
{
- return realm.heap().allocate(realm, realm, event_name, event_init).release_allocated_value_but_fixme_should_propagate_errors();
+ return MUST_OR_THROW_OOM(realm.heap().allocate(realm, realm, event_name, event_init));
}
-PageTransitionEvent* PageTransitionEvent::construct_impl(JS::Realm& realm, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init)
+WebIDL::ExceptionOr> PageTransitionEvent::construct_impl(JS::Realm& realm, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init)
{
return create(realm, event_name, event_init);
}
diff --git a/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.h b/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.h
index ffee7bc592..ee23784b7b 100644
--- a/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.h
+++ b/Userland/Libraries/LibWeb/HTML/PageTransitionEvent.h
@@ -18,8 +18,8 @@ class PageTransitionEvent final : public DOM::Event {
WEB_PLATFORM_OBJECT(PageTransitionEvent, DOM::Event);
public:
- static PageTransitionEvent* create(JS::Realm&, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init);
- static PageTransitionEvent* construct_impl(JS::Realm&, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init);
+ static WebIDL::ExceptionOr> create(JS::Realm&, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init);
+ static WebIDL::ExceptionOr> construct_impl(JS::Realm&, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init);
PageTransitionEvent(JS::Realm&, DeprecatedFlyString const& event_name, PageTransitionEventInit const& event_init);
diff --git a/Userland/Libraries/LibWeb/HTML/Window.cpp b/Userland/Libraries/LibWeb/HTML/Window.cpp
index 4e8984ddc8..76af7c0448 100644
--- a/Userland/Libraries/LibWeb/HTML/Window.cpp
+++ b/Userland/Libraries/LibWeb/HTML/Window.cpp
@@ -789,7 +789,7 @@ void Window::fire_a_page_transition_event(DeprecatedFlyString const& event_name,
// with the persisted attribute initialized to persisted,
HTML::PageTransitionEventInit event_init {};
event_init.persisted = persisted;
- auto event = HTML::PageTransitionEvent::create(associated_document().realm(), event_name, event_init);
+ auto event = HTML::PageTransitionEvent::create(associated_document().realm(), event_name, event_init).release_value_but_fixme_should_propagate_errors();
// ...the cancelable attribute initialized to true,
event->set_cancelable(true);
@@ -798,7 +798,7 @@ void Window::fire_a_page_transition_event(DeprecatedFlyString const& event_name,
event->set_bubbles(true);
// and legacy target override flag set.
- dispatch_event(*event);
+ dispatch_event(event);
}
// https://html.spec.whatwg.org/#dom-queuemicrotask