summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/WebProcess.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2012-11-07 11:22:47 +0100
committerSimon Hausmann <simon.hausmann@digia.com>2012-11-07 11:22:47 +0100
commitcfd86b747d32ac22246a1aa908eaa720c63a88c1 (patch)
tree24d68c6f61c464ecba1e05670b80390ea3b0e50c /Source/WebKit2/WebProcess/WebProcess.cpp
parent69d7c744c9de19d152dbe2d8e46eb7dfd4511d1a (diff)
downloadqtwebkit-cfd86b747d32ac22246a1aa908eaa720c63a88c1.tar.gz
Imported WebKit commit 20271caf2e2c016d5cef40184cddeefeac4f1876 (http://svn.webkit.org/repository/webkit/trunk@133733)
New snapshot that contains all previous fixes as well as build fix for latest QtMultimedia API changes.
Diffstat (limited to 'Source/WebKit2/WebProcess/WebProcess.cpp')
-rw-r--r--Source/WebKit2/WebProcess/WebProcess.cpp85
1 files changed, 27 insertions, 58 deletions
diff --git a/Source/WebKit2/WebProcess/WebProcess.cpp b/Source/WebKit2/WebProcess/WebProcess.cpp
index 33be75989..60fe731b9 100644
--- a/Source/WebKit2/WebProcess/WebProcess.cpp
+++ b/Source/WebKit2/WebProcess/WebProcess.cpp
@@ -199,6 +199,16 @@ void WebProcess::addMessageReceiver(CoreIPC::StringReference messageReceiverName
m_messageReceiverMap.addMessageReceiver(messageReceiverName, messageReceiver);
}
+void WebProcess::addMessageReceiver(CoreIPC::StringReference messageReceiverName, uint64_t destinationID, CoreIPC::MessageReceiver* messageReceiver)
+{
+ m_messageReceiverMap.addMessageReceiver(messageReceiverName, destinationID, messageReceiver);
+}
+
+void WebProcess::removeMessageReceiver(CoreIPC::StringReference messageReceiverName, uint64_t destinationID)
+{
+ m_messageReceiverMap.removeMessageReceiver(messageReceiverName, destinationID);
+}
+
void WebProcess::initializeWebProcess(const WebProcessCreationParameters& parameters, CoreIPC::MessageDecoder& decoder)
{
ASSERT(m_pageMap.isEmpty());
@@ -264,7 +274,8 @@ void WebProcess::initializeWebProcess(const WebProcessCreationParameters& parame
if (parameters.shouldUseFontSmoothing)
setShouldUseFontSmoothing(true);
-#if USE(CFURLSTORAGESESSIONS)
+#if PLATFORM(MAC) || USE(CFNETWORK)
+ // FIXME (NetworkProcess): Send this identifier to network process.
WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase(parameters.uiProcessBundleIdentifier);
#endif
@@ -297,8 +308,7 @@ void WebProcess::ensureNetworkProcessConnection()
#else
ASSERT_NOT_REACHED();
#endif
-
- RefPtr<NetworkProcessConnection> m_networkProcessConnection = NetworkProcessConnection::create(connectionIdentifier);
+ m_networkProcessConnection = NetworkProcessConnection::create(connectionIdentifier);
}
#endif // ENABLE(NETWORK_PROCESS)
@@ -651,18 +661,8 @@ void WebProcess::terminate()
void WebProcess::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::MessageDecoder& decoder, OwnPtr<CoreIPC::MessageEncoder>& replyEncoder)
{
- if (m_messageReceiverMap.dispatchSyncMessage(connection, messageID, decoder, replyEncoder))
- return;
-
- uint64_t pageID = decoder.destinationID();
- if (!pageID)
- return;
-
- WebPage* page = webPage(pageID);
- if (!page)
+ m_messageReceiverMap.dispatchSyncMessage(connection, messageID, decoder, replyEncoder);
return;
-
- page->didReceiveSyncMessage(connection, messageID, decoder, replyEncoder);
}
void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::MessageDecoder& decoder)
@@ -692,25 +692,6 @@ void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::Mes
}
#endif
-#if ENABLE(BATTERY_STATUS)
- if (messageID.is<CoreIPC::MessageClassWebBatteryManager>()) {
- m_batteryManager.didReceiveMessage(connection, messageID, decoder);
- return;
- }
-#endif
-
-#if ENABLE(NETWORK_INFO)
- if (messageID.is<CoreIPC::MessageClassWebNetworkInfoManager>()) {
- m_networkInfoManager.didReceiveMessage(connection, messageID, decoder);
- return;
- }
-#endif
-
- if (messageID.is<CoreIPC::MessageClassWebIconDatabaseProxy>()) {
- m_iconDatabaseProxy.didReceiveMessage(connection, messageID, decoder);
- return;
- }
-
if (messageID.is<CoreIPC::MessageClassWebKeyValueStorageManager>()) {
WebKeyValueStorageManager::shared().didReceiveMessage(connection, messageID, decoder);
return;
@@ -720,25 +701,11 @@ void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::Mes
WebMediaCacheManager::shared().didReceiveMessage(connection, messageID, decoder);
return;
}
-
-#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
- if (messageID.is<CoreIPC::MessageClassWebNotificationManager>()) {
- m_notificationManager.didReceiveMessage(connection, messageID, decoder);
- return;
- }
-#endif
if (messageID.is<CoreIPC::MessageClassWebResourceCacheManager>()) {
WebResourceCacheManager::shared().didReceiveMessage(connection, messageID, decoder);
return;
}
-
-#if USE(SOUP)
- if (messageID.is<CoreIPC::MessageClassWebSoupRequestManager>()) {
- m_soupRequestManager.didReceiveMessage(connection, messageID, decoder);
- return;
- }
-#endif
if (messageID.is<CoreIPC::MessageClassWebPageGroupProxy>()) {
uint64_t pageGroupID = decoder.destinationID();
@@ -751,16 +718,6 @@ void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::Mes
pageGroupProxy->didReceiveMessage(connection, messageID, decoder);
}
-
- uint64_t pageID = decoder.destinationID();
- if (!pageID)
- return;
-
- WebPage* page = webPage(pageID);
- if (!page)
- return;
-
- page->didReceiveMessage(connection, messageID, decoder);
}
void WebProcess::didClose(CoreIPC::Connection*)
@@ -786,7 +743,7 @@ void WebProcess::didClose(CoreIPC::Connection*)
m_runLoop->stop();
}
-void WebProcess::didReceiveInvalidMessage(CoreIPC::Connection*, CoreIPC::MessageID)
+void WebProcess::didReceiveInvalidMessage(CoreIPC::Connection*, CoreIPC::StringReference, CoreIPC::StringReference)
{
// We received an invalid message, but since this is from the UI process (which we trust),
// we'll let it slide.
@@ -1075,8 +1032,18 @@ void WebProcess::postInjectedBundleMessage(const CoreIPC::DataReference& message
}
#if ENABLE(NETWORK_PROCESS)
+NetworkProcessConnection* WebProcess::networkConnection()
+{
+ // FIXME (NetworkProcess): How do we handle not having the connection when the WebProcess needs it?
+ // If the NetworkProcess crashed, for example. Do we respawn it?
+ ASSERT(m_networkProcessConnection);
+ return m_networkProcessConnection.get();
+}
+
void WebProcess::networkProcessConnectionClosed(NetworkProcessConnection* connection)
{
+ // FIXME (NetworkProcess): How do we handle not having the connection when the WebProcess needs it?
+ // If the NetworkProcess crashed, for example. Do we respawn it?
ASSERT(m_networkProcessConnection);
ASSERT(m_networkProcessConnection == connection);
@@ -1085,6 +1052,8 @@ void WebProcess::networkProcessConnectionClosed(NetworkProcessConnection* connec
void WebProcess::networkProcessCrashed(CoreIPC::Connection*)
{
+ // FIXME (NetworkProcess): How do we handle not having the connection when the WebProcess needs it?
+ // If the NetworkProcess crashed, for example. Do we respawn it?
ASSERT(m_networkProcessConnection);
networkProcessConnectionClosed(m_networkProcessConnection.get());