| Index: Source/bindings/v8/custom/V8WorkerCustom.cpp
|
| diff --git a/Source/bindings/v8/custom/V8WorkerCustom.cpp b/Source/bindings/v8/custom/V8WorkerCustom.cpp
|
| index 01bcdd8dc9bb0c5fe510597043eb5807ab42393d..d4d6a9f9c3caa39646cadc2aa2b036f4ddcb994a 100644
|
| --- a/Source/bindings/v8/custom/V8WorkerCustom.cpp
|
| +++ b/Source/bindings/v8/custom/V8WorkerCustom.cpp
|
| @@ -31,6 +31,7 @@
|
| #include "config.h"
|
| #include "V8Worker.h"
|
|
|
| +#include "bindings/v8/ExceptionMessages.h"
|
| #include "bindings/v8/ExceptionState.h"
|
| #include "bindings/v8/SerializedScriptValue.h"
|
| #include "bindings/v8/V8Binding.h"
|
| @@ -47,8 +48,12 @@ void V8Worker::postMessageMethodCustom(const v8::FunctionCallbackInfo<v8::Value>
|
| 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", "Worker", ExceptionMessages::notASequenceType("Second")), args.GetIsolate());
|
| return;
|
| + }
|
| }
|
| bool didThrow = false;
|
| RefPtr<SerializedScriptValue> message =
|
|
|