Index: content/renderer/indexed_db_dispatcher.cc |
diff --git a/content/renderer/indexed_db_dispatcher.cc b/content/renderer/indexed_db_dispatcher.cc |
index 8b3ddda96cea6fb9d2aca33816449674ae090b2a..8ca651e150999d6f755772231a3794e5802e8d86 100644 |
--- a/content/renderer/indexed_db_dispatcher.cc |
+++ b/content/renderer/indexed_db_dispatcher.cc |
@@ -31,13 +31,16 @@ using WebKit::WebIDBDatabaseError; |
using WebKit::WebIDBTransaction; |
using WebKit::WebIDBTransactionCallbacks; |
-IndexedDBDispatcher::IndexedDBDispatcher() { |
+IndexedDBDispatcher::IndexedDBDispatcher(IndexedDBMessageFilter* filter) : |
+ pending_callbacks_(filter), |
+ pending_transaction_callbacks_(filter), |
+ pending_database_callbacks_(filter) { |
} |
IndexedDBDispatcher::~IndexedDBDispatcher() { |
} |
-bool IndexedDBDispatcher::OnMessageReceived(const IPC::Message& msg) { |
+void IndexedDBDispatcher::OnMessageReceived(const IPC::Message& msg) { |
bool handled = true; |
IPC_BEGIN_MESSAGE_MAP(IndexedDBDispatcher, msg) |
IPC_MESSAGE_HANDLER(IndexedDBMsg_CallbacksSuccessIDBCursor, |
@@ -62,7 +65,9 @@ bool IndexedDBDispatcher::OnMessageReceived(const IPC::Message& msg) { |
OnVersionChange) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
- return handled; |
+ // If a message gets here, IndexedDBMessageFilter already determined that it |
+ // is an IndexedDB message. |
+ DCHECK(handled); |
} |
void IndexedDBDispatcher::Send(IPC::Message* msg) { |
@@ -116,12 +121,6 @@ void IndexedDBDispatcher::RequestIDBFactoryOpen( |
WebFrame* web_frame) { |
scoped_ptr<WebIDBCallbacks> callbacks(callbacks_ptr); |
- if (!web_frame) |
michaeln
2011/12/01 21:42:05
does this no longer apply?
dgrogan
2011/12/01 22:49:00
This was to make the webkit side easier, so I didn
|
- return; // We must be shutting down. |
- RenderViewImpl* render_view = RenderViewImpl::FromWebView(web_frame->view()); |
- if (!render_view) |
- return; // We must be shutting down. |
- |
IndexedDBHostMsg_FactoryOpen_Params params; |
params.response_id = pending_callbacks_.Add(callbacks.release()); |
params.origin = origin; |
@@ -177,8 +176,8 @@ void IndexedDBDispatcher::RequestIDBDatabaseOpen( |
int32 idb_database_id) { |
scoped_ptr<WebIDBDatabaseCallbacks> callbacks(callbacks_ptr); |
- int32 response_id = pending_database_callbacks_.Add(callbacks.release()); |
- Send(new IndexedDBHostMsg_DatabaseOpen(response_id, idb_database_id)); |
+ pending_database_callbacks_.AddWithID(callbacks.release(), idb_database_id); |
+ Send(new IndexedDBHostMsg_DatabaseOpen(idb_database_id, idb_database_id)); |
} |
void IndexedDBDispatcher::RequestIDBDatabaseSetVersion( |