Chromium Code Reviews| 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)); |
| } |