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

LibWeb: Ignore MessagePort.start() on already-closed port

This matches other browsers, and fixes an assertion found by Domato.
This commit is contained in:
Andreas Kling 2024-03-12 10:53:21 +01:00
parent c11f710628
commit 43d2c920e0
3 changed files with 14 additions and 0 deletions

View file

@ -0,0 +1 @@
PASS (didn't crash)

View file

@ -0,0 +1,10 @@
<script src="../include.js"></script>
<script>
test(() => {
let channel = new MessageChannel();
let port = channel.port2;
port.close();
port.start();
println("PASS (didn't crash)");
});
</script>

View file

@ -364,6 +364,9 @@ void MessagePort::post_message_task_steps(SerializedTransferRecord& serialize_wi
// https://html.spec.whatwg.org/multipage/web-messaging.html#dom-messageport-start
void MessagePort::start()
{
if (!is_entangled())
return;
VERIFY(m_socket);
VERIFY(m_fd_passing_socket);