| Index: Source/bindings/v8/custom/V8DedicatedWorkerGlobalScopeCustom.cpp
|
| diff --git a/Source/bindings/v8/custom/V8DedicatedWorkerGlobalScopeCustom.cpp b/Source/bindings/v8/custom/V8DedicatedWorkerGlobalScopeCustom.cpp
|
| index ffa25a147a0b9f0e3bbc5aef81f5d19e157e8cbb..8994365f8878950e09fbbe3434e2b09a9ff7d5a2 100644
|
| --- a/Source/bindings/v8/custom/V8DedicatedWorkerGlobalScopeCustom.cpp
|
| +++ b/Source/bindings/v8/custom/V8DedicatedWorkerGlobalScopeCustom.cpp
|
| @@ -31,6 +31,7 @@
|
| #include "config.h"
|
| #include "V8DedicatedWorkerGlobalScope.h"
|
|
|
| +#include "bindings/v8/ExceptionMessages.h"
|
| #include "bindings/v8/ExceptionState.h"
|
| #include "bindings/v8/V8Binding.h"
|
| #include "bindings/v8/V8Utilities.h"
|
| @@ -46,8 +47,12 @@ void V8DedicatedWorkerGlobalScope::postMessageMethodCustom(const v8::FunctionCal
|
| MessagePortArray ports;
|
| ArrayBufferArray arrayBuffers;
|
| if (args.Length() > 1) {
|
| - if (!extractTransferables(args[1], ports, arrayBuffers, args.GetIsolate()))
|
| + bool notASequence = false;
|
| + if (!extractTransferables(args[1], ports, arrayBuffers, notASequence, args.GetIsolate())) {
|
| + if (notASequence)
|
| + throwTypeError(ExceptionMessages::failedToExecute("postMessage", "WorkerGlobalScope", ExceptionMessages::notASequenceType("Second")), args.GetIsolate());
|
| return;
|
| + }
|
| }
|
| bool didThrow = false;
|
| RefPtr<SerializedScriptValue> message =
|
|
|