Title: [137809] trunk/Source/WebKit2
Revision
137809
Author
[email protected]
Date
2012-12-15 13:53:11 -0800 (Sat, 15 Dec 2012)

Log Message

Remove WebContext::downloadFinished
https://bugs.webkit.org/show_bug.cgi?id=105105

Reviewed by Sam Weinig.

Have DownloadProxyMap manage the message receiver map and remove WebContext::downloadFinished.

* UIProcess/Downloads/DownloadProxy.cpp:
(WebKit::DownloadProxy::didFinish):
(WebKit::DownloadProxy::didFail):
(WebKit::DownloadProxy::didCancel):
* UIProcess/Downloads/DownloadProxyMap.cpp:
(WebKit::DownloadProxyMap::DownloadProxyMap):
(WebKit::DownloadProxyMap::createDownloadProxy):
(WebKit::DownloadProxyMap::downloadFinished):
* UIProcess/Downloads/DownloadProxyMap.h:
(DownloadProxyMap):
* UIProcess/WebContext.cpp:
(WebKit::WebContext::WebContext):
(WebKit::WebContext::createDownloadProxy):
* UIProcess/WebContext.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (137808 => 137809)


--- trunk/Source/WebKit2/ChangeLog	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/ChangeLog	2012-12-15 21:53:11 UTC (rev 137809)
@@ -1,3 +1,27 @@
+2012-12-15  Anders Carlsson  <[email protected]>
+
+        Remove WebContext::downloadFinished
+        https://bugs.webkit.org/show_bug.cgi?id=105105
+
+        Reviewed by Sam Weinig.
+
+        Have DownloadProxyMap manage the message receiver map and remove WebContext::downloadFinished.
+
+        * UIProcess/Downloads/DownloadProxy.cpp:
+        (WebKit::DownloadProxy::didFinish):
+        (WebKit::DownloadProxy::didFail):
+        (WebKit::DownloadProxy::didCancel):
+        * UIProcess/Downloads/DownloadProxyMap.cpp:
+        (WebKit::DownloadProxyMap::DownloadProxyMap):
+        (WebKit::DownloadProxyMap::createDownloadProxy):
+        (WebKit::DownloadProxyMap::downloadFinished):
+        * UIProcess/Downloads/DownloadProxyMap.h:
+        (DownloadProxyMap):
+        * UIProcess/WebContext.cpp:
+        (WebKit::WebContext::WebContext):
+        (WebKit::WebContext::createDownloadProxy):
+        * UIProcess/WebContext.h:
+
 2012-12-15  Sam Weinig  <[email protected]>
 
         Make the NetworkProcess be managed by the WebContext, rather than a singleton NetworkProcessMananger

Modified: trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp (137808 => 137809)


--- trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxy.cpp	2012-12-15 21:53:11 UTC (rev 137809)
@@ -167,7 +167,7 @@
     m_webContext->downloadClient().didFinish(m_webContext, this);
 
     // This can cause the DownloadProxy object to be deleted.
-    m_webContext->downloadFinished(this);
+    m_downloadProxyMap.downloadFinished(this);
 }
 
 static PassRefPtr<WebData> createWebData(const CoreIPC::DataReference& data)
@@ -188,7 +188,7 @@
     m_webContext->downloadClient().didFail(m_webContext, this, error);
 
     // This can cause the DownloadProxy object to be deleted.
-    m_webContext->downloadFinished(this);
+    m_downloadProxyMap.downloadFinished(this);
 }
 
 void DownloadProxy::didCancel(const CoreIPC::DataReference& resumeData)
@@ -198,7 +198,7 @@
     m_webContext->downloadClient().didCancel(m_webContext, this);
 
     // This can cause the DownloadProxy object to be deleted.
-    m_webContext->downloadFinished(this);
+    m_downloadProxyMap.downloadFinished(this);
 }
 
 #if PLATFORM(QT)

Modified: trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.cpp (137808 => 137809)


--- trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.cpp	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.cpp	2012-12-15 21:53:11 UTC (rev 137809)
@@ -27,11 +27,14 @@
 #include "DownloadProxyMap.h"
 
 #include "DownloadProxy.h"
+#include "DownloadProxyMessages.h"
+#include "MessageReceiverMap.h"
 #include <wtf/StdLibExtras.h>
 
 namespace WebKit {
 
-DownloadProxyMap::DownloadProxyMap()
+DownloadProxyMap::DownloadProxyMap(CoreIPC::MessageReceiverMap& messageReceiverMap)
+    : m_messageReceiverMap(messageReceiverMap)
 {
 }
 
@@ -45,6 +48,8 @@
     RefPtr<DownloadProxy> downloadProxy = DownloadProxy::create(*this, webContext);
     m_downloads.set(downloadProxy->downloadID(), downloadProxy);
 
+    m_messageReceiverMap.addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID(), downloadProxy.get());
+
     return downloadProxy.get();
 }
 
@@ -53,8 +58,9 @@
     ASSERT(m_downloads.contains(downloadProxy->downloadID()));
 
     downloadProxy->invalidate();
+    m_downloads.remove(downloadProxy->downloadID());
 
-    m_downloads.remove(downloadProxy->downloadID());
+    m_messageReceiverMap.removeMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID());
 }
 
 void DownloadProxyMap::processDidClose()

Modified: trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.h (137808 => 137809)


--- trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.h	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/UIProcess/Downloads/DownloadProxyMap.h	2012-12-15 21:53:11 UTC (rev 137809)
@@ -30,6 +30,10 @@
 #include <wtf/Noncopyable.h>
 #include <wtf/PassRefPtr.h>
 
+namespace CoreIPC {
+class MessageReceiverMap;
+}
+
 namespace WebKit {
 
 class DownloadProxy;
@@ -39,7 +43,7 @@
     WTF_MAKE_NONCOPYABLE(DownloadProxyMap);
 
 public:
-    DownloadProxyMap();
+    explicit DownloadProxyMap(CoreIPC::MessageReceiverMap&);
     ~DownloadProxyMap();
 
     DownloadProxy* createDownloadProxy(WebContext*);
@@ -50,6 +54,8 @@
     void processDidClose();
 
 private:
+    CoreIPC::MessageReceiverMap& m_messageReceiverMap;
+
     HashMap<uint64_t, RefPtr<DownloadProxy> > m_downloads;
 };
 

Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (137808 => 137809)


--- trunk/Source/WebKit2/UIProcess/WebContext.cpp	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp	2012-12-15 21:53:11 UTC (rev 137809)
@@ -128,6 +128,7 @@
     , m_alwaysUsesComplexTextCodePath(false)
     , m_shouldUseFontSmoothing(true)
     , m_cacheModel(CacheModelDocumentViewer)
+    , m_downloads(m_messageReceiverMap)
     , m_memorySamplerEnabled(false)
     , m_memorySamplerInterval(1400.0)
 #if PLATFORM(WIN)
@@ -846,18 +847,9 @@
 
 DownloadProxy* WebContext::createDownloadProxy()
 {
-    DownloadProxy* downloadProxy = m_downloads.createDownloadProxy(this);
-    addMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID(), downloadProxy);
-    return downloadProxy;
+    return m_downloads.createDownloadProxy(this);
 }
 
-void WebContext::downloadFinished(DownloadProxy* downloadProxy)
-{
-    m_downloads.downloadFinished(downloadProxy);
-
-    removeMessageReceiver(Messages::DownloadProxy::messageReceiverName(), downloadProxy->downloadID());
-}
-
 // FIXME: This is not the ideal place for this function.
 HashSet<String, CaseFoldingHash> WebContext::pdfAndPostScriptMIMETypes()
 {

Modified: trunk/Source/WebKit2/UIProcess/WebContext.h (137808 => 137809)


--- trunk/Source/WebKit2/UIProcess/WebContext.h	2012-12-15 21:31:14 UTC (rev 137808)
+++ trunk/Source/WebKit2/UIProcess/WebContext.h	2012-12-15 21:53:11 UTC (rev 137809)
@@ -181,7 +181,6 @@
     // Downloads.
     DownloadProxy* createDownloadProxy();
     WebDownloadClient& downloadClient() { return m_downloadClient; }
-    void downloadFinished(DownloadProxy*);
 
     WebHistoryClient& historyClient() { return m_historyClient; }
 
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to