| Index: Source/bindings/v8/custom/V8MessagePortCustom.cpp
|
| diff --git a/Source/bindings/v8/custom/V8MessagePortCustom.cpp b/Source/bindings/v8/custom/V8MessagePortCustom.cpp
|
| index f8eb9df2abdcfe5bbfb05a53b8a648c7aaec5d4d..d9d2a335424895fb9c6af49677fb795d8ec09ef0 100644
|
| --- a/Source/bindings/v8/custom/V8MessagePortCustom.cpp
|
| +++ b/Source/bindings/v8/custom/V8MessagePortCustom.cpp
|
| @@ -48,19 +48,14 @@ void V8MessagePort::postMessageMethodCustom(const v8::FunctionCallbackInfo<v8::V
|
| MessagePortArray portArray;
|
| ArrayBufferArray arrayBufferArray;
|
| if (info.Length() > 1) {
|
| - bool notASequence = false;
|
| const int transferablesArgIndex = 1;
|
| - if (!extractTransferables(info[transferablesArgIndex], portArray, arrayBufferArray, notASequence, info.GetIsolate())) {
|
| - if (notASequence) {
|
| - exceptionState.throwTypeError(ExceptionMessages::notAnArrayTypeArgumentOrValue(transferablesArgIndex + 1));
|
| - exceptionState.throwIfNeeded();
|
| - }
|
| + if (!extractTransferables(info[transferablesArgIndex], transferablesArgIndex, portArray, arrayBufferArray, exceptionState, info.GetIsolate())) {
|
| + exceptionState.throwIfNeeded();
|
| return;
|
| }
|
| }
|
| - bool didThrow = false;
|
| - RefPtr<SerializedScriptValue> message = SerializedScriptValue::create(info[0], &portArray, &arrayBufferArray, didThrow, info.GetIsolate());
|
| - if (didThrow)
|
| + RefPtr<SerializedScriptValue> message = SerializedScriptValue::create(info[0], &portArray, &arrayBufferArray, exceptionState, info.GetIsolate());
|
| + if (exceptionState.throwIfNeeded())
|
| return;
|
| messagePort->postMessage(message.release(), &portArray, exceptionState);
|
| exceptionState.throwIfNeeded();
|
|
|