1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 00:27:35 +00:00

LibWeb: Make factory methods of HTML::MessageEvent fallible

This commit is contained in:
Kenneth Myhra 2023-02-12 22:05:32 +01:00 committed by Linus Groh
parent 3d79cdf095
commit 7ec444047c
7 changed files with 11 additions and 11 deletions

View file

@ -1294,7 +1294,7 @@ WebIDL::ExceptionOr<JS::NonnullGCPtr<Event>> Document::create_event(DeprecatedSt
} else if (interface_lowercase == "keyboardevent") { } else if (interface_lowercase == "keyboardevent") {
event = UIEvents::KeyboardEvent::create(realm, ""); event = UIEvents::KeyboardEvent::create(realm, "");
} else if (interface_lowercase == "messageevent") { } else if (interface_lowercase == "messageevent") {
event = HTML::MessageEvent::create(realm, ""); event = TRY(HTML::MessageEvent::create(realm, ""));
} else if (interface_lowercase.is_one_of("mouseevent", "mouseevents")) { } else if (interface_lowercase.is_one_of("mouseevent", "mouseevents")) {
event = UIEvents::MouseEvent::create(realm, ""); event = UIEvents::MouseEvent::create(realm, "");
} else if (interface_lowercase == "storageevent") { } else if (interface_lowercase == "storageevent") {

View file

@ -9,12 +9,12 @@
namespace Web::HTML { namespace Web::HTML {
MessageEvent* MessageEvent::create(JS::Realm& realm, DeprecatedFlyString const& event_name, MessageEventInit const& event_init) WebIDL::ExceptionOr<JS::NonnullGCPtr<MessageEvent>> MessageEvent::create(JS::Realm& realm, DeprecatedFlyString const& event_name, MessageEventInit const& event_init)
{ {
return realm.heap().allocate<MessageEvent>(realm, realm, event_name, event_init).release_allocated_value_but_fixme_should_propagate_errors(); return MUST_OR_THROW_OOM(realm.heap().allocate<MessageEvent>(realm, realm, event_name, event_init));
} }
MessageEvent* MessageEvent::construct_impl(JS::Realm& realm, DeprecatedFlyString const& event_name, MessageEventInit const& event_init) WebIDL::ExceptionOr<JS::NonnullGCPtr<MessageEvent>> MessageEvent::construct_impl(JS::Realm& realm, DeprecatedFlyString const& event_name, MessageEventInit const& event_init)
{ {
return create(realm, event_name, event_init); return create(realm, event_name, event_init);
} }

View file

@ -21,8 +21,8 @@ class MessageEvent : public DOM::Event {
WEB_PLATFORM_OBJECT(MessageEvent, DOM::Event); WEB_PLATFORM_OBJECT(MessageEvent, DOM::Event);
public: public:
static MessageEvent* create(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init = {}); static WebIDL::ExceptionOr<JS::NonnullGCPtr<MessageEvent>> create(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init = {});
static MessageEvent* construct_impl(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init); static WebIDL::ExceptionOr<JS::NonnullGCPtr<MessageEvent>> construct_impl(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init);
MessageEvent(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init); MessageEvent(JS::Realm&, DeprecatedFlyString const& event_name, MessageEventInit const& event_init);
virtual ~MessageEvent() override; virtual ~MessageEvent() override;

View file

@ -99,7 +99,7 @@ void MessagePort::post_message(JS::Value message)
MessageEventInit event_init {}; MessageEventInit event_init {};
event_init.data = message; event_init.data = message;
event_init.origin = "<origin>"; event_init.origin = "<origin>";
target_port->dispatch_event(*MessageEvent::create(target_port->realm(), HTML::EventNames::message, event_init)); target_port->dispatch_event(MessageEvent::create(target_port->realm(), HTML::EventNames::message, event_init).release_value_but_fixme_should_propagate_errors());
})); }));
} }

View file

@ -913,7 +913,7 @@ WebIDL::ExceptionOr<void> Window::post_message_impl(JS::Value message, Deprecate
HTML::MessageEventInit event_init {}; HTML::MessageEventInit event_init {};
event_init.data = message; event_init.data = message;
event_init.origin = "<origin>"; event_init.origin = "<origin>";
dispatch_event(*HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init)); dispatch_event(HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init).release_value_but_fixme_should_propagate_errors());
}); });
return {}; return {};
} }

View file

@ -166,7 +166,7 @@ void Worker::run_a_worker(AK::URL& url, EnvironmentSettingsObject& outside_setti
MessageEventInit event_init {}; MessageEventInit event_init {};
event_init.data = message; event_init.data = message;
event_init.origin = "<origin>"; event_init.origin = "<origin>";
dispatch_event(*MessageEvent::create(*m_worker_realm, HTML::EventNames::message, event_init)); dispatch_event(MessageEvent::create(*m_worker_realm, HTML::EventNames::message, event_init).release_value_but_fixme_should_propagate_errors());
})); }));
return JS::js_undefined(); return JS::js_undefined();

View file

@ -235,7 +235,7 @@ void WebSocket::on_message(ByteBuffer message, bool is_text)
HTML::MessageEventInit event_init; HTML::MessageEventInit event_init;
event_init.data = JS::PrimitiveString::create(vm(), text_message); event_init.data = JS::PrimitiveString::create(vm(), text_message);
event_init.origin = url(); event_init.origin = url();
dispatch_event(*HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init)); dispatch_event(HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init).release_value_but_fixme_should_propagate_errors());
return; return;
} }
@ -247,7 +247,7 @@ void WebSocket::on_message(ByteBuffer message, bool is_text)
HTML::MessageEventInit event_init; HTML::MessageEventInit event_init;
event_init.data = JS::ArrayBuffer::create(realm(), message); event_init.data = JS::ArrayBuffer::create(realm(), message);
event_init.origin = url(); event_init.origin = url();
dispatch_event(*HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init)); dispatch_event(HTML::MessageEvent::create(realm(), HTML::EventNames::message, event_init).release_value_but_fixme_should_propagate_errors());
return; return;
} }