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

Unified Diff: Source/bindings/v8/IDBBindingUtilities.cpp

Issue 18590006: Blob support for IDB [Blink] (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: small cleanup Created 7 years 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/v8/IDBBindingUtilities.cpp
diff --git a/Source/bindings/v8/IDBBindingUtilities.cpp b/Source/bindings/v8/IDBBindingUtilities.cpp
index b870b69be4a5f1281363a732fbd1f3157c12cd42..a6b69f7fcc44280fc81ebf0c0aca683974759f21 100644
--- a/Source/bindings/v8/IDBBindingUtilities.cpp
+++ b/Source/bindings/v8/IDBBindingUtilities.cpp
@@ -251,7 +251,7 @@ PassRefPtr<IDBKey> createIDBKeyFromScriptValueAndKeyPath(DOMRequestState* state,
return createIDBKeyFromScriptValueAndKeyPath(value, keyPath.string(), isolate);
}
-v8::Handle<v8::Value> deserializeIDBValueBuffer(SharedBuffer* buffer, v8::Isolate* isolate)
+v8::Handle<v8::Value> deserializeIDBValueBuffer(SharedBuffer* buffer, const Vector<BlobInfo>* blobInfo, v8::Isolate* isolate)
{
ASSERT(v8::Context::InContext());
if (!buffer)
@@ -261,7 +261,7 @@ v8::Handle<v8::Value> deserializeIDBValueBuffer(SharedBuffer* buffer, v8::Isolat
Vector<uint8_t> value;
value.append(buffer->data(), buffer->size());
RefPtr<SerializedScriptValue> serializedValue = SerializedScriptValue::createFromWireBytes(value);
- return serializedValue->deserialize(isolate);
+ return serializedValue->deserialize(isolate, 0, blobInfo);
}
bool injectV8KeyIntoV8Value(v8::Handle<v8::Value> key, v8::Handle<v8::Value> value, const IDBKeyPath& keyPath, v8::Isolate* isolate)
@@ -345,7 +345,7 @@ PassRefPtr<IDBKeyRange> scriptValueToIDBKeyRange(DOMRequestState* state, const S
}
#ifndef NDEBUG
-void assertPrimaryKeyValidOrInjectable(DOMRequestState* state, PassRefPtr<SharedBuffer> buffer, PassRefPtr<IDBKey> prpKey, const IDBKeyPath& keyPath)
+void assertPrimaryKeyValidOrInjectable(DOMRequestState* state, PassRefPtr<SharedBuffer> buffer, const Vector<BlobInfo>* blobInfo, PassRefPtr<IDBKey> prpKey, const IDBKeyPath& keyPath)
{
RefPtr<IDBKey> key(prpKey);
@@ -353,7 +353,7 @@ void assertPrimaryKeyValidOrInjectable(DOMRequestState* state, PassRefPtr<Shared
v8::Isolate* isolate = state ? state->context()->GetIsolate() : v8::Isolate::GetCurrent();
ScriptValue keyValue = idbKeyToScriptValue(state, key);
- ScriptValue scriptValue(deserializeIDBValueBuffer(buffer.get(), isolate), isolate);
+ ScriptValue scriptValue(deserializeIDBValueBuffer(buffer.get(), blobInfo, isolate), isolate);
RefPtr<IDBKey> expectedKey = createIDBKeyFromScriptValueAndKeyPath(state, scriptValue, keyPath);
ASSERT(!expectedKey || expectedKey->isEqual(key.get()));

Powered by Google App Engine
This is Rietveld 408576698