Index: content/child/indexed_db/indexed_db_dispatcher.cc |
diff --git a/content/child/indexed_db/indexed_db_dispatcher.cc b/content/child/indexed_db/indexed_db_dispatcher.cc |
index 4c131fc801a3e0262e6b326ff921e4661ea83100..54ef82b2427ff73f19bf2ea04f43f6fc2f158ce3 100644 |
--- a/content/child/indexed_db/indexed_db_dispatcher.cc |
+++ b/content/child/indexed_db/indexed_db_dispatcher.cc |
@@ -21,6 +21,7 @@ |
#include "third_party/WebKit/public/platform/WebIDBDatabaseError.h" |
#include "third_party/WebKit/public/platform/WebIDBDatabaseException.h" |
+using blink::WebBlobInfo; |
using blink::WebData; |
using blink::WebIDBCallbacks; |
using blink::WebIDBCursor; |
@@ -324,6 +325,7 @@ void IndexedDBDispatcher::RequestIDBDatabasePut( |
int64 transaction_id, |
int64 object_store_id, |
const WebData& value, |
+ const blink::WebVector<WebBlobInfo>& web_blob_info, |
const IndexedDBKey& key, |
WebIDBDatabase::PutMode put_mode, |
WebIDBCallbacks* callbacks, |
@@ -363,6 +365,21 @@ void IndexedDBDispatcher::RequestIDBDatabasePut( |
} |
} |
+ params.blob_or_file_info.resize(web_blob_info.size()); |
+ for (size_t i = 0; i < web_blob_info.size(); ++i) { |
+ const WebBlobInfo& info = web_blob_info[i]; |
+ params.blob_or_file_info[i].is_file = info.isFile(); |
jsbell
2014/04/09 20:11:08
Would a local reference to params.blob_or_file_inf
ericu
2014/04/09 21:14:47
Yeah, a little. Done.
|
+ if (info.isFile()) { |
+ params.blob_or_file_info[i].file_path = info.filePath(); |
+ params.blob_or_file_info[i].file_name = info.fileName(); |
+ } else { |
+ params.blob_or_file_info[i].size = info.size(); |
+ } |
+ params.blob_or_file_info[i].uuid = info.uuid().latin1(); |
+ DCHECK(params.blob_or_file_info[i].uuid.size()); |
+ params.blob_or_file_info[i].mime_type = info.type(); |
+ } |
+ |
Send(new IndexedDBHostMsg_DatabasePut(params)); |
} |