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

Unified Diff: third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp

Issue 2768113002: WIP: Create a LongStringCollection that transfers long strings with fewer copies.
Patch Set: Created 3 years, 9 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: third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp
diff --git a/third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp b/third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp
index 6fe6418850cd580284c5de016641fab4a8f8e50d..52907fac41c94ca77f4fcc6603667363f9539a8e 100644
--- a/third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp
+++ b/third_party/WebKit/Source/bindings/core/v8/serialization/V8ScriptValueDeserializer.cpp
@@ -170,6 +170,12 @@ void V8ScriptValueDeserializer::transfer() {
for (const auto& image : *imageBitmapContents)
m_transferredImageBitmaps.push_back(ImageBitmap::create(image));
}
+
+ // Transfer long string references.
+ const auto& longStrings =
+ m_serializedScriptValue->longStrings().getAll(isolate);
+ for (unsigned i = 0; i < longStrings.size(); i++)
+ m_deserializer.TransferLongString(i, longStrings[i]);
}
bool V8ScriptValueDeserializer::readUTF8String(String* string) {

Powered by Google App Engine
This is Rietveld 408576698