| Index: chrome/renderer/indexed_db_dispatcher.cc
|
| diff --git a/chrome/renderer/indexed_db_dispatcher.cc b/chrome/renderer/indexed_db_dispatcher.cc
|
| index a0595127a4f710496fe9b45f06c3dca12a18c5af..4d88bba1fa654b622664f2005257e3a5af08a202 100644
|
| --- a/chrome/renderer/indexed_db_dispatcher.cc
|
| +++ b/chrome/renderer/indexed_db_dispatcher.cc
|
| @@ -44,6 +44,8 @@ bool IndexedDBDispatcher::OnMessageReceived(const IPC::Message& msg) {
|
| OnSuccessSerializedScriptValue)
|
| IPC_MESSAGE_HANDLER(ViewMsg_IDBCallbacksError,
|
| OnError)
|
| + IPC_MESSAGE_HANDLER(ViewMsg_IDBTransactionCallbacksAbort,
|
| + OnAbort)
|
| IPC_MESSAGE_UNHANDLED(handled = false)
|
| IPC_END_MESSAGE_MAP()
|
| return handled;
|
| @@ -155,6 +157,12 @@ void IndexedDBDispatcher::RequestIDBObjectStoreRemoveIndex(
|
| name));
|
| }
|
|
|
| +void IndexedDBDispatcher::RequestIDBTransactionSetCallbacks(
|
| + WebKit::WebIDBTransactionCallbacks* callbacks) {
|
| + pending_transaction_callbacks_.AddWithID(callbacks, callbacks->id());
|
| +}
|
| +
|
| +
|
| void IndexedDBDispatcher::OnSuccessNull(int32 response_id) {
|
| WebKit::WebIDBCallbacks* callbacks = pending_callbacks_.Lookup(response_id);
|
| callbacks->onSuccess();
|
| @@ -202,3 +210,11 @@ void IndexedDBDispatcher::OnError(int32 response_id, int code,
|
| callbacks->onError(WebIDBDatabaseError(code, message));
|
| pending_callbacks_.Remove(response_id);
|
| }
|
| +
|
| +void IndexedDBDispatcher::OnAbort(int transaction_id) {
|
| + WebKit::WebIDBTransactionCallbacks* callbacks =
|
| + pending_transaction_callbacks_.Lookup(transaction_id);
|
| + DCHECK(callbacks);
|
| + callbacks->onAbort();
|
| + pending_transaction_callbacks_.Remove(transaction_id);
|
| +}
|
|
|