summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-05-24 11:24:40 +0100
committerBen Murdoch <benm@google.com>2011-06-02 09:53:15 +0100
commit81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch)
tree7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
parent94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff)
downloadexternal_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz
external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp')
-rw-r--r--Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
index 7f794d9..2a97923 100644
--- a/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
+++ b/Source/WebKit/chromium/src/WebIDBDatabaseImpl.cpp
@@ -29,8 +29,10 @@
#include "DOMStringList.h"
#include "IDBCallbacksProxy.h"
#include "IDBDatabaseBackendInterface.h"
+#include "IDBDatabaseCallbacksProxy.h"
#include "IDBTransactionBackendInterface.h"
#include "WebIDBCallbacks.h"
+#include "WebIDBDatabaseCallbacks.h"
#include "WebIDBObjectStoreImpl.h"
#include "WebIDBTransactionImpl.h"
@@ -81,7 +83,7 @@ void WebIDBDatabaseImpl::deleteObjectStore(const WebString& name, const WebIDBTr
void WebIDBDatabaseImpl::setVersion(const WebString& version, WebIDBCallbacks* callbacks, WebExceptionCode& ec)
{
- m_databaseBackend->setVersion(version, IDBCallbacksProxy::create(callbacks), ec);
+ m_databaseBackend->setVersion(version, IDBCallbacksProxy::create(callbacks), m_databaseCallbacks, ec);
}
WebIDBTransaction* WebIDBDatabaseImpl::transaction(const WebDOMStringList& names, unsigned short mode, WebExceptionCode& ec)
@@ -97,7 +99,17 @@ WebIDBTransaction* WebIDBDatabaseImpl::transaction(const WebDOMStringList& names
void WebIDBDatabaseImpl::close()
{
- m_databaseBackend->close();
+ // Use the callbacks that ::open gave us so that the backend in
+ // multi-process chromium knows which database connection is closing.
+ ASSERT(m_databaseCallbacks);
+ m_databaseBackend->close(m_databaseCallbacks);
+}
+
+void WebIDBDatabaseImpl::open(WebIDBDatabaseCallbacks* callbacks)
+{
+ ASSERT(!m_databaseCallbacks);
+ m_databaseCallbacks = IDBDatabaseCallbacksProxy::create(callbacks);
+ m_databaseBackend->open(m_databaseCallbacks);
}
} // namespace WebCore