| Index: content/browser/indexed_db/indexed_db_dispatcher_host.cc
|
| diff --git a/content/browser/indexed_db/indexed_db_dispatcher_host.cc b/content/browser/indexed_db/indexed_db_dispatcher_host.cc
|
| index 9119c511e6154930d8517ba82c7e9dd6cd8a40e4..5284af054ff881d22e3f58d6e3d8b95f280a7d8a 100644
|
| --- a/content/browser/indexed_db/indexed_db_dispatcher_host.cc
|
| +++ b/content/browser/indexed_db/indexed_db_dispatcher_host.cc
|
| @@ -508,6 +508,7 @@ bool IndexedDBDispatcherHost::DatabaseDispatcherHost::OnMessageReceived(
|
| OnVersionChangeIgnored)
|
| IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabaseDestroyed, OnDestroyed)
|
| IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabaseGet, OnGet)
|
| + IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabaseGetAll, OnGetAll)
|
| IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabasePut, OnPutWrapper)
|
| IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabaseSetIndexKeys, OnSetIndexKeys)
|
| IPC_MESSAGE_HANDLER(IndexedDBHostMsg_DatabaseSetIndexesReady,
|
| @@ -646,6 +647,23 @@ void IndexedDBDispatcherHost::DatabaseDispatcherHost::OnGet(
|
| callbacks);
|
| }
|
|
|
| +void IndexedDBDispatcherHost::DatabaseDispatcherHost::OnGetAll(
|
| + const IndexedDBHostMsg_DatabaseGetAll_Params& params) {
|
| + DCHECK(
|
| + parent_->indexed_db_context_->TaskRunner()->RunsTasksOnCurrentThread());
|
| + IndexedDBConnection* connection =
|
| + parent_->GetOrTerminateProcess(&map_, params.ipc_database_id);
|
| + if (!connection || !connection->IsConnected())
|
| + return;
|
| +
|
| + scoped_refptr<IndexedDBCallbacks> callbacks(new IndexedDBCallbacks(
|
| + parent_, params.ipc_thread_id, params.ipc_callbacks_id));
|
| + connection->database()->GetAll(
|
| + parent_->HostTransactionId(params.transaction_id), params.object_store_id,
|
| + make_scoped_ptr(new IndexedDBKeyRange(params.key_range)),
|
| + params.max_count, callbacks);
|
| +}
|
| +
|
| void IndexedDBDispatcherHost::DatabaseDispatcherHost::OnPutWrapper(
|
| const IndexedDBHostMsg_DatabasePut_Params& params) {
|
| std::vector<storage::BlobDataHandle*> handles;
|
|
|