| Index: third_party/WebKit/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
|
| diff --git a/third_party/WebKit/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp b/third_party/WebKit/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
|
| index 621e899c68744066cf896cd41cedbf99b92b9c6f..adbf0630fb5501c2d170ef76158d784480b992ff 100644
|
| --- a/third_party/WebKit/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
|
| +++ b/third_party/WebKit/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
|
| @@ -4,12 +4,8 @@
|
|
|
| #include "bindings/modules/v8/SerializedScriptValueForModulesFactory.h"
|
|
|
| -#include "bindings/core/v8/ExceptionState.h"
|
| -#include "bindings/core/v8/SerializedScriptValue.h"
|
| -#include "bindings/modules/v8/ScriptValueSerializerForModules.h"
|
| #include "bindings/modules/v8/serialization/V8ScriptValueDeserializerForModules.h"
|
| #include "bindings/modules/v8/serialization/V8ScriptValueSerializerForModules.h"
|
| -#include "core/dom/ExceptionCode.h"
|
| #include "platform/instrumentation/tracing/TraceEvent.h"
|
|
|
| namespace blink {
|
| @@ -21,14 +17,8 @@ SerializedScriptValueForModulesFactory::create(v8::Isolate* isolate,
|
| WebBlobInfoArray* blobInfo,
|
| ExceptionState& exceptionState) {
|
| TRACE_EVENT0("blink", "SerializedScriptValueFactory::create");
|
| - if (RuntimeEnabledFeatures::v8BasedStructuredCloneEnabled()) {
|
| - V8ScriptValueSerializerForModules serializer(ScriptState::current(isolate));
|
| - serializer.setBlobInfoArray(blobInfo);
|
| - return serializer.serialize(value, transferables, exceptionState);
|
| - }
|
| - SerializedScriptValueWriterForModules writer;
|
| - ScriptValueSerializerForModules serializer(writer, blobInfo,
|
| - ScriptState::current(isolate));
|
| + V8ScriptValueSerializerForModules serializer(ScriptState::current(isolate));
|
| + serializer.setBlobInfoArray(blobInfo);
|
| return serializer.serialize(value, transferables, exceptionState);
|
| }
|
|
|
| @@ -38,31 +28,10 @@ v8::Local<v8::Value> SerializedScriptValueForModulesFactory::deserialize(
|
| MessagePortArray* messagePorts,
|
| const WebBlobInfoArray* blobInfo) {
|
| TRACE_EVENT0("blink", "SerializedScriptValueFactory::deserialize");
|
| - if (RuntimeEnabledFeatures::v8BasedStructuredCloneEnabled()) {
|
| - V8ScriptValueDeserializerForModules deserializer(
|
| - ScriptState::current(isolate), value);
|
| - deserializer.setTransferredMessagePorts(messagePorts);
|
| - deserializer.setBlobInfoArray(blobInfo);
|
| - return deserializer.deserialize();
|
| - }
|
| - // deserialize() can run arbitrary script (e.g., setters), which could result
|
| - // in |this| being destroyed. Holding a RefPtr ensures we are alive (along
|
| - // with our internal data) throughout the operation.
|
| - RefPtr<SerializedScriptValue> protect(value);
|
| - if (!value->dataLengthInBytes())
|
| - return v8::Null(isolate);
|
| - static_assert(sizeof(SerializedScriptValueWriter::BufferValueType) == 2,
|
| - "BufferValueType should be 2 bytes");
|
| - // FIXME: SerializedScriptValue shouldn't use String for its underlying
|
| - // storage. Instead, it should use SharedBuffer or Vector<uint8_t>. The
|
| - // information stored in m_data isn't even encoded in UTF-16. Instead,
|
| - // unicode characters are encoded as UTF-8 with two code units per UChar.
|
| - SerializedScriptValueReaderForModules reader(
|
| - value->data(), value->dataLengthInBytes(), blobInfo,
|
| - value->blobDataHandles(), ScriptState::current(isolate));
|
| - ScriptValueDeserializerForModules deserializer(
|
| - reader, messagePorts, value->getArrayBufferContentsArray(),
|
| - value->getImageBitmapContentsArray());
|
| + V8ScriptValueDeserializerForModules deserializer(
|
| + ScriptState::current(isolate), value);
|
| + deserializer.setTransferredMessagePorts(messagePorts);
|
| + deserializer.setBlobInfoArray(blobInfo);
|
| return deserializer.deserialize();
|
| }
|
|
|
|
|