[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