Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Unified Diff: Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp

Issue 1097773004: Sharing of SharedArrayBuffer via PostMessage transfer (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: update for non-split typedarray hierarchy Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
diff --git a/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp b/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
index e3282e51c9b0536aa1ee507cad80d57f6eb2962f..e310791ee329b1dd0f67f38bce1995d6d6b03a81 100644
--- a/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
+++ b/Source/bindings/modules/v8/SerializedScriptValueForModulesFactory.cpp
@@ -12,7 +12,7 @@
namespace blink {
-PassRefPtr<SerializedScriptValue> SerializedScriptValueForModulesFactory::create(v8::Isolate* isolate, v8::Local<v8::Value> value, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, WebBlobInfoArray* blobInfo, ExceptionState& exceptionState)
+PassRefPtr<SerializedScriptValue> SerializedScriptValueForModulesFactory::create(v8::Isolate* isolate, v8::Local<v8::Value> value, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, SharedArrayBufferArray* sharedArrayBuffers, WebBlobInfoArray* blobInfo, ExceptionState& exceptionState)
{
RefPtr<SerializedScriptValue> serializedValue = SerializedScriptValueFactory::create();
SerializedScriptValueWriterForModules writer;
@@ -20,7 +20,7 @@ PassRefPtr<SerializedScriptValue> SerializedScriptValueForModulesFactory::create
String errorMessage;
{
v8::TryCatch tryCatch;
- status = SerializedScriptValueFactory::doSerialize(value, writer, messagePorts, arrayBuffers, blobInfo, serializedValue.get(), tryCatch, errorMessage, isolate);
+ status = SerializedScriptValueFactory::doSerialize(value, writer, messagePorts, arrayBuffers, sharedArrayBuffers, blobInfo, serializedValue.get(), tryCatch, errorMessage, isolate);
if (status == ScriptValueSerializer::JSException) {
// If there was a JS exception thrown, re-throw it.
exceptionState.rethrowV8Exception(tryCatch.Exception());
@@ -33,7 +33,7 @@ PassRefPtr<SerializedScriptValue> SerializedScriptValueForModulesFactory::create
exceptionState.throwDOMException(DataCloneError, errorMessage);
return serializedValue.release();
case ScriptValueSerializer::Success:
- transferData(serializedValue.get(), writer, arrayBuffers, exceptionState, isolate);
+ transferData(serializedValue.get(), writer, arrayBuffers, sharedArrayBuffers, exceptionState, isolate);
return serializedValue.release();
case ScriptValueSerializer::JSException:
ASSERT_NOT_REACHED();
@@ -51,9 +51,9 @@ PassRefPtr<SerializedScriptValue> SerializedScriptValueForModulesFactory::create
return createFromWire(wireData);
}
-ScriptValueSerializer::Status SerializedScriptValueForModulesFactory::doSerialize(v8::Local<v8::Value> value, SerializedScriptValueWriter& writer, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, WebBlobInfoArray* blobInfo, BlobDataHandleMap& blobDataHandles, v8::TryCatch& tryCatch, String& errorMessage, v8::Isolate* isolate)
+ScriptValueSerializer::Status SerializedScriptValueForModulesFactory::doSerialize(v8::Local<v8::Value> value, SerializedScriptValueWriter& writer, MessagePortArray* messagePorts, ArrayBufferArray* arrayBuffers, SharedArrayBufferArray* sharedArrayBuffers, WebBlobInfoArray* blobInfo, BlobDataHandleMap& blobDataHandles, v8::TryCatch& tryCatch, String& errorMessage, v8::Isolate* isolate)
{
- ScriptValueSerializerForModules serializer(writer, messagePorts, arrayBuffers, blobInfo, blobDataHandles, tryCatch, ScriptState::current(isolate));
+ ScriptValueSerializerForModules serializer(writer, messagePorts, arrayBuffers, sharedArrayBuffers, blobInfo, blobDataHandles, tryCatch, ScriptState::current(isolate));
ScriptValueSerializer::Status status = serializer.serialize(value);
errorMessage = serializer.errorMessage();
return status;

Powered by Google App Engine
This is Rietveld 408576698