diff --git a/dom/workers/MessageEventRunnable.cpp b/dom/workers/MessageEventRunnable.cpp index b96e3b2f324d..c81c21e13acf 100644 --- a/dom/workers/MessageEventRunnable.cpp +++ b/dom/workers/MessageEventRunnable.cpp @@ -61,7 +61,12 @@ bool MessageEventRunnable::DispatchDOMEvent(JSContext* aCx, MarkerTracingType::START); } - Read(parent, aCx, &messageData, rv); + JS::CloneDataPolicy cloneDataPolicy; + // The target of a worker postMessage cannot change while the message is + // in-flight, so SAB status was checked at sending-time, and does not need to + // be checked when deserializing. + cloneDataPolicy.allowSharedMemory(); + Read(parent, aCx, &messageData, cloneDataPolicy, rv); if (isTimelineRecording) { end = MakeUnique(