Index: third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp |
diff --git a/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp b/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp |
index 063a4bab185235844a466f7723a7bfc11b526801..4d42926a75b495d4c8dc258a326a12a1a7a6c0d4 100644 |
--- a/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp |
+++ b/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp |
@@ -362,7 +362,7 @@ void SerializedScriptValueWriter::writeTransferredImageBitmap(uint32_t index) |
doWriteUint32(index); |
} |
-void SerializedScriptValueWriter::writeTransferredOffscreenCanvas(uint32_t width, uint32_t height, uint32_t canvasId, uint32_t clientId, uint32_t localId, uint64_t nonce) |
+void SerializedScriptValueWriter::writeTransferredOffscreenCanvas(uint32_t width, uint32_t height, uint32_t canvasId, uint32_t clientId, uint32_t localId, uint64_t nonceHigh, uint64_t nonceLow) |
{ |
append(OffscreenCanvasTransferTag); |
doWriteUint32(width); |
@@ -370,7 +370,8 @@ void SerializedScriptValueWriter::writeTransferredOffscreenCanvas(uint32_t width |
doWriteUint32(canvasId); |
doWriteUint32(clientId); |
doWriteUint32(localId); |
- doWriteUint64(nonce); |
+ doWriteUint64(nonceHigh); |
+ doWriteUint64(nonceLow); |
} |
void SerializedScriptValueWriter::writeTransferredSharedArrayBuffer(uint32_t index) |
@@ -1216,7 +1217,7 @@ ScriptValueSerializer::StateBase* ScriptValueSerializer::writeTransferredOffscre |
return handleError(Status::DataCloneError, "An OffscreenCanvas is detached and could not be cloned.", next); |
if (offscreenCanvas->renderingContext()) |
return handleError(Status::DataCloneError, "An OffscreenCanvas with a context could not be cloned.", next); |
- m_writer.writeTransferredOffscreenCanvas(offscreenCanvas->width(), offscreenCanvas->height(), offscreenCanvas->getAssociatedCanvasId(), offscreenCanvas->clientId(), offscreenCanvas->localId(), offscreenCanvas->nonce()); |
+ m_writer.writeTransferredOffscreenCanvas(offscreenCanvas->width(), offscreenCanvas->height(), offscreenCanvas->getAssociatedCanvasId(), offscreenCanvas->clientId(), offscreenCanvas->localId(), offscreenCanvas->nonceHigh(), offscreenCanvas->nonceLow()); |
return nullptr; |
} |
@@ -1578,7 +1579,7 @@ bool SerializedScriptValueReader::readWithTag(SerializationTag tag, v8::Local<v8 |
if (!m_version) |
return false; |
uint32_t width, height, canvasId, clientId, localId; |
- uint64_t nonce; |
+ uint64_t nonceHigh, nonceLow; |
if (!doReadUint32(&width)) |
return false; |
if (!doReadUint32(&height)) |
@@ -1589,9 +1590,9 @@ bool SerializedScriptValueReader::readWithTag(SerializationTag tag, v8::Local<v8 |
return false; |
if (!doReadUint32(&localId)) |
return false; |
- if (!doReadUint64(&nonce)) |
+ if (!doReadUint64(&nonceHigh) || !doReadUint64(&nonceLow)) |
return false; |
- if (!deserializer.tryGetTransferredOffscreenCanvas(width, height, canvasId, clientId, localId, nonce, value)) |
+ if (!deserializer.tryGetTransferredOffscreenCanvas(width, height, canvasId, clientId, localId, nonceHigh, nonceLow, value)) |
return false; |
break; |
} |
@@ -2407,11 +2408,11 @@ bool ScriptValueDeserializer::tryGetTransferredSharedArrayBuffer(uint32_t index, |
return true; |
} |
-bool ScriptValueDeserializer::tryGetTransferredOffscreenCanvas(uint32_t width, uint32_t height, uint32_t canvasId, uint32_t clientId, uint32_t localId, uint64_t nonce, v8::Local<v8::Value>* object) |
+bool ScriptValueDeserializer::tryGetTransferredOffscreenCanvas(uint32_t width, uint32_t height, uint32_t canvasId, uint32_t clientId, uint32_t localId, uint64_t nonceHigh, uint64_t nonceLow, v8::Local<v8::Value>* object) |
{ |
OffscreenCanvas* offscreenCanvas = OffscreenCanvas::create(width, height); |
offscreenCanvas->setAssociatedCanvasId(canvasId); |
- offscreenCanvas->setSurfaceId(clientId, localId, nonce); |
+ offscreenCanvas->setSurfaceId(clientId, localId, nonceHigh, nonceLow); |
*object = toV8(offscreenCanvas, m_reader.getScriptState()); |
if ((*object).IsEmpty()) |
return false; |