diff --git a/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp b/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp index 5e9c59c33d..ef5c97d547 100644 --- a/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp +++ b/Meta/Lagom/Tools/CodeGenerators/LibWeb/BindingsGenerator/IDLGenerators.cpp @@ -888,7 +888,7 @@ static void generate_to_cpp(SourceGenerator& generator, ParameterType& parameter )~~~"); } else { sequence_generator.append(R"~~~( - @sequence.storage_type@ @cpp_name@ { global_object.heap() }; + @sequence.storage_type@<@sequence.type@> @cpp_name@ { vm.heap() }; )~~~"); } } diff --git a/Userland/Libraries/LibWeb/HTML/MessageEvent.cpp b/Userland/Libraries/LibWeb/HTML/MessageEvent.cpp index 3d5e92c634..b877e11103 100644 --- a/Userland/Libraries/LibWeb/HTML/MessageEvent.cpp +++ b/Userland/Libraries/LibWeb/HTML/MessageEvent.cpp @@ -8,6 +8,7 @@ #include #include #include +#include namespace Web::HTML { @@ -31,9 +32,9 @@ MessageEvent::MessageEvent(JS::Realm& realm, FlyString const& event_name, Messag , m_source(event_init.source) { m_ports.ensure_capacity(event_init.ports.size()); - for (auto& port : event_init.ports) { + for (auto const& port : event_init.ports) { VERIFY(port); - m_ports.unchecked_append(*port); + m_ports.unchecked_append(static_cast(*port)); } } diff --git a/Userland/Libraries/LibWeb/HTML/MessageEvent.h b/Userland/Libraries/LibWeb/HTML/MessageEvent.h index 8302122102..032ddbd209 100644 --- a/Userland/Libraries/LibWeb/HTML/MessageEvent.h +++ b/Userland/Libraries/LibWeb/HTML/MessageEvent.h @@ -20,7 +20,7 @@ struct MessageEventInit : public DOM::EventInit { String origin {}; String last_event_id {}; Optional source; - Vector> ports; + Vector> ports; }; class MessageEvent : public DOM::Event { diff --git a/Userland/Libraries/LibWeb/HTML/MessageEvent.idl b/Userland/Libraries/LibWeb/HTML/MessageEvent.idl index f54c2187fc..ef13fc735c 100644 --- a/Userland/Libraries/LibWeb/HTML/MessageEvent.idl +++ b/Userland/Libraries/LibWeb/HTML/MessageEvent.idl @@ -22,6 +22,5 @@ dictionary MessageEventInit : EventInit { USVString origin = ""; DOMString lastEventId = ""; MessageEventSource? source = null; - // FIXME: sequence ports = []; - sequence ports = []; + sequence ports = []; }; diff --git a/Userland/Libraries/LibWeb/HTML/MessagePort.cpp b/Userland/Libraries/LibWeb/HTML/MessagePort.cpp index 2172f23ecc..f3412cb9e0 100644 --- a/Userland/Libraries/LibWeb/HTML/MessagePort.cpp +++ b/Userland/Libraries/LibWeb/HTML/MessagePort.cpp @@ -372,10 +372,10 @@ void MessagePort::post_message_task_steps(SerializedTransferRecord& serialize_wi // 5. Let newPorts be a new frozen array consisting of all MessagePort objects in deserializeRecord.[[TransferredValues]], if any, maintaining their relative order. // FIXME: Use a FrozenArray - Vector> new_ports; + Vector> new_ports; for (auto const& object : deserialize_record.transferred_values) { if (is(*object)) { - new_ports.append(object); + new_ports.append(verify_cast(*object)); } } diff --git a/Userland/Libraries/LibWeb/HTML/Window.cpp b/Userland/Libraries/LibWeb/HTML/Window.cpp index ade57e9c21..2461ce0105 100644 --- a/Userland/Libraries/LibWeb/HTML/Window.cpp +++ b/Userland/Libraries/LibWeb/HTML/Window.cpp @@ -1160,10 +1160,10 @@ WebIDL::ExceptionOr Window::window_post_message_steps(JS::Value message, W // 6. Let newPorts be a new frozen array consisting of all MessagePort objects in deserializeRecord.[[TransferredValues]], // if any, maintaining their relative order. // FIXME: Use a FrozenArray - Vector> new_ports; + Vector> new_ports; for (auto const& object : deserialize_record.transferred_values) { if (is(*object)) { - new_ports.append(object); + new_ports.append(verify_cast(*object)); } }