summaryrefslogtreecommitdiffstats
path: root/chrome/browser/in_process_webkit
diff options
context:
space:
mode:
authorandreip@chromium.org <andreip@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-23 10:30:15 +0000
committerandreip@chromium.org <andreip@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-23 10:30:15 +0000
commitcb40fd2e6057b3d6b1fa4329b4fdffb9c271cc93 (patch)
tree16f47c63c7c7867418cac3cb8a19881602ff75af /chrome/browser/in_process_webkit
parentcf62b32198e4a3f809b5656369d4f30e6e41a82d (diff)
downloadchromium_src-cb40fd2e6057b3d6b1fa4329b4fdffb9c271cc93.zip
chromium_src-cb40fd2e6057b3d6b1fa4329b4fdffb9c271cc93.tar.gz
chromium_src-cb40fd2e6057b3d6b1fa4329b4fdffb9c271cc93.tar.bz2
Add plumbing for IDBTransaction::abort()
BUG= TEST= Review URL: http://codereview.chromium.org/3441019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60274 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/in_process_webkit')
-rw-r--r--chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc12
-rw-r--r--chrome/browser/in_process_webkit/indexed_db_dispatcher_host.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc
index 958eb4f..292bbc0 100644
--- a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc
+++ b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.cc
@@ -141,6 +141,7 @@ bool IndexedDBDispatcherHost::OnMessageReceived(const IPC::Message& message) {
case ViewHostMsg_IDBObjectStoreRemoveIndex::ID:
case ViewHostMsg_IDBObjectStoreOpenCursor::ID:
case ViewHostMsg_IDBObjectStoreDestroyed::ID:
+ case ViewHostMsg_IDBTransactionAbort::ID:
case ViewHostMsg_IDBTransactionDestroyed::ID:
case ViewHostMsg_IDBTransactionObjectStore::ID:
break;
@@ -923,6 +924,7 @@ bool IndexedDBDispatcherHost::TransactionDispatcherHost::OnMessageReceived(
bool handled = true;
IPC_BEGIN_MESSAGE_MAP_EX(IndexedDBDispatcherHost::TransactionDispatcherHost,
message, *msg_is_ok)
+ IPC_MESSAGE_HANDLER(ViewHostMsg_IDBTransactionAbort, OnAbort)
IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_IDBTransactionObjectStore,
OnObjectStore)
IPC_MESSAGE_HANDLER(ViewHostMsg_IDBTransactionDestroyed, OnDestroyed)
@@ -939,6 +941,16 @@ void IndexedDBDispatcherHost::TransactionDispatcherHost::Send(
parent_->Send(message);
}
+void IndexedDBDispatcherHost::TransactionDispatcherHost::OnAbort(
+ int32 transaction_id) {
+ WebIDBTransaction* idb_transaction = parent_->GetOrTerminateProcess(
+ &map_, transaction_id, 0, ViewHostMsg_IDBTransactionAbort::ID);
+ if (!idb_transaction)
+ return;
+
+ idb_transaction->abort();
+}
+
void IndexedDBDispatcherHost::TransactionDispatcherHost::OnObjectStore(
int32 transaction_id, const string16& name, IPC::Message* reply_msg) {
WebIDBTransaction* idb_transaction = parent_->GetOrTerminateProcess(
diff --git a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.h b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.h
index dc0bc47..654b3ab 100644
--- a/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.h
+++ b/chrome/browser/in_process_webkit/indexed_db_dispatcher_host.h
@@ -213,6 +213,7 @@ class IndexedDBDispatcherHost
void Send(IPC::Message* message);
// TODO: add the rest of the transaction methods.
+ void OnAbort(int32 transaction_id);
void OnObjectStore(int32 transaction_id, const string16& name,
IPC::Message* reply_msg);
void OnDestroyed(int32 idb_transaction_id);