diff --git a/Userland/Libraries/LibWeb/HTML/Navigator.cpp b/Userland/Libraries/LibWeb/HTML/Navigator.cpp
index 67d361db7d..c115587495 100644
--- a/Userland/Libraries/LibWeb/HTML/Navigator.cpp
+++ b/Userland/Libraries/LibWeb/HTML/Navigator.cpp
@@ -15,9 +15,9 @@
namespace Web::HTML {
-JS::NonnullGCPtr Navigator::create(JS::Realm& realm)
+WebIDL::ExceptionOr> Navigator::create(JS::Realm& realm)
{
- return realm.heap().allocate(realm, realm).release_allocated_value_but_fixme_should_propagate_errors();
+ return MUST_OR_THROW_OOM(realm.heap().allocate(realm, realm));
}
Navigator::Navigator(JS::Realm& realm)
diff --git a/Userland/Libraries/LibWeb/HTML/Navigator.h b/Userland/Libraries/LibWeb/HTML/Navigator.h
index 54026d53ae..3f580f0403 100644
--- a/Userland/Libraries/LibWeb/HTML/Navigator.h
+++ b/Userland/Libraries/LibWeb/HTML/Navigator.h
@@ -22,7 +22,7 @@ class Navigator : public Bindings::PlatformObject
WEB_PLATFORM_OBJECT(Navigator, Bindings::PlatformObject);
public:
- static JS::NonnullGCPtr create(JS::Realm&);
+ static WebIDL::ExceptionOr> create(JS::Realm&);
// FIXME: Implement NavigatorContentUtilsMixin