Title: [142044] trunk/Source/WebKit2
Revision
142044
Author
[email protected]
Date
2013-02-06 15:44:21 -0800 (Wed, 06 Feb 2013)

Log Message

Dispatch storage manager messages to the storage work queue
https://bugs.webkit.org/show_bug.cgi?id=109099

Reviewed by Andreas Kling.

* UIProcess/Storage/StorageManager.cpp:
(WebKit::StorageManager::didReceiveMessageOnConnectionWorkQueue):
(WebKit::StorageManager::dispatchMessageOnStorageManagerQueue):
(WebKit):
* UIProcess/Storage/StorageManager.h:
(StorageManager):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (142043 => 142044)


--- trunk/Source/WebKit2/ChangeLog	2013-02-06 23:33:15 UTC (rev 142043)
+++ trunk/Source/WebKit2/ChangeLog	2013-02-06 23:44:21 UTC (rev 142044)
@@ -1,5 +1,19 @@
 2013-02-06  Anders Carlsson  <[email protected]>
 
+        Dispatch storage manager messages to the storage work queue
+        https://bugs.webkit.org/show_bug.cgi?id=109099
+
+        Reviewed by Andreas Kling.
+
+        * UIProcess/Storage/StorageManager.cpp:
+        (WebKit::StorageManager::didReceiveMessageOnConnectionWorkQueue):
+        (WebKit::StorageManager::dispatchMessageOnStorageManagerQueue):
+        (WebKit):
+        * UIProcess/Storage/StorageManager.h:
+        (StorageManager):
+
+2013-02-06  Anders Carlsson  <[email protected]>
+
         Pass the document source URL to the pluginLoadPolicy callback
         https://bugs.webkit.org/show_bug.cgi?id=109084
         <rdar://problem/13154516>

Modified: trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp (142043 => 142044)


--- trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp	2013-02-06 23:33:15 UTC (rev 142043)
+++ trunk/Source/WebKit2/UIProcess/Storage/StorageManager.cpp	2013-02-06 23:44:21 UTC (rev 142044)
@@ -59,7 +59,8 @@
 void StorageManager::didReceiveMessageOnConnectionWorkQueue(CoreIPC::Connection* connection, OwnPtr<CoreIPC::MessageDecoder>& decoder)
 {
     if (decoder->messageReceiverName() == Messages::StorageManager::messageReceiverName()) {
-        didReceiveStorageManagerMessageOnConnectionWorkQueue(connection, decoder);
+        // FIXME: We should come up with a better way to automatically dispatch messages on a given work queue.
+        m_queue->dispatch(bind(&StorageManager::dispatchMessageOnStorageManagerQueue, this, RefPtr<CoreIPC::Connection>(connection), decoder.leakPtr()));
         return;
     }
 }
@@ -78,4 +79,14 @@
 {
 }
 
+void StorageManager::dispatchMessageOnStorageManagerQueue(CoreIPC::Connection* connection, CoreIPC::MessageDecoder* decoder)
+{
+    ASSERT(decoder->messageReceiverName() == Messages::StorageManager::messageReceiverName());
+
+    OwnPtr<CoreIPC::MessageDecoder> decoderPtr = adoptPtr(decoder);
+    didReceiveStorageManagerMessageOnConnectionWorkQueue(connection, decoderPtr);
+
+    ASSERT(!decoderPtr);
+}
+
 } // namespace WebKit

Modified: trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h (142043 => 142044)


--- trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h	2013-02-06 23:33:15 UTC (rev 142043)
+++ trunk/Source/WebKit2/UIProcess/Storage/StorageManager.h	2013-02-06 23:44:21 UTC (rev 142044)
@@ -58,6 +58,8 @@
     void createStorageArea(CoreIPC::Connection*, uint64_t storageAreaID, uint64_t storageNamespaceID, const SecurityOriginData&);
     void destroyStorageArea(CoreIPC::Connection*, uint64_t storageAreaID);
 
+    void dispatchMessageOnStorageManagerQueue(CoreIPC::Connection*, CoreIPC::MessageDecoder*);
+
     RefPtr<WorkQueue> m_queue;
 };
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to