[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
hans at chromium.org
hans at chromium.org
Wed Dec 22 15:44:40 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit fa173ba0faebd846ab2eb92da6fe1b9ecc90b4fb
Author: hans at chromium.org <hans at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Nov 11 17:35:26 2010 +0000
2010-11-11 Hans Wennborg <hans at chromium.org>
Reviewed by Jeremy Orlow.
IndexedDB: signal IDBFactoryBackendInterface destruction to embedder
https://bugs.webkit.org/show_bug.cgi?id=49313
Implement ChromiumBridge::idbShutdown(), passing through to the
WebKitClient.
* public/WebKitClient.h:
(WebKit::WebKitClient::idbShutdown):
* src/ChromiumBridge.cpp:
(WebCore::ChromiumBridge::idbShutdown):
2010-11-11 Hans Wennborg <hans at chromium.org>
Reviewed by Jeremy Orlow.
IndexedDB: signal IDBFactoryBackendInterface destruction to embedder
https://bugs.webkit.org/show_bug.cgi?id=49313
Define IDBFactoryBackendInterface destructor out-of-line to allow
for embedder-specific implementation. For Chromium, have the
destructor call ChromiumBridge::idbShutdown().
* platform/chromium/ChromiumBridge.h:
* storage/IDBFactoryBackendInterface.cpp:
(WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
* storage/IDBFactoryBackendInterface.h:
* storage/chromium/IDBFactoryBackendInterface.cpp:
(WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 167dcd5..3435d5b 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,21 @@
+2010-11-11 Hans Wennborg <hans at chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: signal IDBFactoryBackendInterface destruction to embedder
+ https://bugs.webkit.org/show_bug.cgi?id=49313
+
+ Define IDBFactoryBackendInterface destructor out-of-line to allow
+ for embedder-specific implementation. For Chromium, have the
+ destructor call ChromiumBridge::idbShutdown().
+
+ * platform/chromium/ChromiumBridge.h:
+ * storage/IDBFactoryBackendInterface.cpp:
+ (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
+ * storage/IDBFactoryBackendInterface.h:
+ * storage/chromium/IDBFactoryBackendInterface.cpp:
+ (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
+
2010-11-11 Dirk Schulze <krit at webkit.org>
Reviewed by Nikolas Zimmermann.
diff --git a/WebCore/platform/chromium/ChromiumBridge.h b/WebCore/platform/chromium/ChromiumBridge.h
index 55a4ce0..fff7f69 100644
--- a/WebCore/platform/chromium/ChromiumBridge.h
+++ b/WebCore/platform/chromium/ChromiumBridge.h
@@ -171,6 +171,7 @@ namespace WebCore {
// IndexedDB ----------------------------------------------------------
static PassRefPtr<IDBFactoryBackendInterface> idbFactory();
+ static void idbShutdown();
// Extracts keyPath from values and returns the corresponding keys.
static void createIDBKeysFromSerializedValuesAndKeyPath(const Vector<RefPtr<SerializedScriptValue> >& values, const String& keyPath, Vector<RefPtr<IDBKey> >& keys);
diff --git a/WebCore/storage/IDBFactoryBackendInterface.cpp b/WebCore/storage/IDBFactoryBackendInterface.cpp
index f1c0fb7..935ccac 100644
--- a/WebCore/storage/IDBFactoryBackendInterface.cpp
+++ b/WebCore/storage/IDBFactoryBackendInterface.cpp
@@ -43,7 +43,10 @@ PassRefPtr<IDBFactoryBackendInterface> IDBFactoryBackendInterface::create()
return IDBFactoryBackendImpl::create();
}
+IDBFactoryBackendInterface::~IDBFactoryBackendInterface()
+{
+}
+
} // namespace WebCore
#endif // ENABLE(INDEXED_DATABASE)
-
diff --git a/WebCore/storage/IDBFactoryBackendInterface.h b/WebCore/storage/IDBFactoryBackendInterface.h
index 7d922c3..445f9e9 100644
--- a/WebCore/storage/IDBFactoryBackendInterface.h
+++ b/WebCore/storage/IDBFactoryBackendInterface.h
@@ -49,7 +49,7 @@ class SecurityOrigin;
class IDBFactoryBackendInterface : public ThreadSafeShared<IDBFactoryBackendInterface> {
public:
static PassRefPtr<IDBFactoryBackendInterface> create();
- virtual ~IDBFactoryBackendInterface() { }
+ virtual ~IDBFactoryBackendInterface();
virtual void open(const String& name, const String& description, PassRefPtr<IDBCallbacks>, PassRefPtr<SecurityOrigin>, Frame*, const String& dataDir, int64_t maximumSize) = 0;
};
@@ -59,4 +59,3 @@ public:
#endif
#endif // IDBFactoryBackendInterface_h
-
diff --git a/WebCore/storage/chromium/IDBFactoryBackendInterface.cpp b/WebCore/storage/chromium/IDBFactoryBackendInterface.cpp
index 016cab0..c0fb444 100644
--- a/WebCore/storage/chromium/IDBFactoryBackendInterface.cpp
+++ b/WebCore/storage/chromium/IDBFactoryBackendInterface.cpp
@@ -39,7 +39,11 @@ PassRefPtr<IDBFactoryBackendInterface> IDBFactoryBackendInterface::create()
return ChromiumBridge::idbFactory();
}
+IDBFactoryBackendInterface::~IDBFactoryBackendInterface()
+{
+ ChromiumBridge::idbShutdown();
+}
+
} // namespace WebCore
#endif // ENABLE(INDEXED_DATABASE)
-
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index bf07f67..6310746 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,18 @@
+2010-11-11 Hans Wennborg <hans at chromium.org>
+
+ Reviewed by Jeremy Orlow.
+
+ IndexedDB: signal IDBFactoryBackendInterface destruction to embedder
+ https://bugs.webkit.org/show_bug.cgi?id=49313
+
+ Implement ChromiumBridge::idbShutdown(), passing through to the
+ WebKitClient.
+
+ * public/WebKitClient.h:
+ (WebKit::WebKitClient::idbShutdown):
+ * src/ChromiumBridge.cpp:
+ (WebCore::ChromiumBridge::idbShutdown):
+
2010-11-10 Kenneth Russell <kbr at google.com>
Reviewed by James Robinson.
diff --git a/WebKit/chromium/public/WebKitClient.h b/WebKit/chromium/public/WebKitClient.h
index 09c79c5..7ced7ad 100644
--- a/WebKit/chromium/public/WebKitClient.h
+++ b/WebKit/chromium/public/WebKitClient.h
@@ -141,6 +141,7 @@ public:
// Indexed Database ----------------------------------------------------
virtual WebIDBFactory* idbFactory() { return 0; }
+ virtual void idbShutdown() { };
virtual void createIDBKeysFromSerializedValuesAndKeyPath(const WebVector<WebSerializedScriptValue>& values, const WebString& keyPath, WebVector<WebIDBKey>& keys) { }
diff --git a/WebKit/chromium/src/ChromiumBridge.cpp b/WebKit/chromium/src/ChromiumBridge.cpp
index 39d2566..074c982 100644
--- a/WebKit/chromium/src/ChromiumBridge.cpp
+++ b/WebKit/chromium/src/ChromiumBridge.cpp
@@ -514,6 +514,12 @@ PassRefPtr<IDBFactoryBackendInterface> ChromiumBridge::idbFactory()
return IDBFactoryBackendProxy::create();
}
+void ChromiumBridge::idbShutdown()
+{
+ // In the browser process, this shuts down the utility process. In the renderer process, it does nothing.
+ webKitClient()->idbShutdown();
+}
+
void ChromiumBridge::createIDBKeysFromSerializedValuesAndKeyPath(const Vector<RefPtr<SerializedScriptValue> >& values, const String& keyPath, Vector<RefPtr<IDBKey> >& keys)
{
WebVector<WebSerializedScriptValue> webValues = values;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list