Title: [131963] trunk/Source/WebKit2
- Revision
- 131963
- Author
- [email protected]
- Date
- 2012-10-19 17:00:19 -0700 (Fri, 19 Oct 2012)
Log Message
WebProcess should only connect to the NetworkProcess if NetworkProcess is enabled
https://bugs.webkit.org/show_bug.cgi?id=99885
Reviewed by Alexey Proskuryakov.
WebContext should tell each WebProcess it creates whether NetworkProcess use is enabled.
Add a WebProcess initialization flag for whether or not NetworkProcess use is enabled:
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
(WebProcessCreationParameters):
Include that info in the initialization parameters:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::createNewWebProcess):
Store whether or not NetworkProcess use is enabled, and only connect to the NetworkProcess if appropriate:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
(WebKit::WebProcess::ensureNetworkProcessConnection):
* WebProcess/WebProcess.h:
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (131962 => 131963)
--- trunk/Source/WebKit2/ChangeLog 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/ChangeLog 2012-10-20 00:00:19 UTC (rev 131963)
@@ -1,5 +1,33 @@
2012-10-19 Brady Eidson <[email protected]>
+ WebProcess should only connect to the NetworkProcess if NetworkProcess is enabled
+ https://bugs.webkit.org/show_bug.cgi?id=99885
+
+ Reviewed by Alexey Proskuryakov.
+
+ WebContext should tell each WebProcess it creates whether NetworkProcess use is enabled.
+
+ Add a WebProcess initialization flag for whether or not NetworkProcess use is enabled:
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
+ (WebKit::WebProcessCreationParameters::encode):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ (WebProcessCreationParameters):
+
+ Include that info in the initialization parameters:
+ * UIProcess/WebContext.cpp:
+ (WebKit::WebContext::createNewWebProcess):
+
+ Store whether or not NetworkProcess use is enabled, and only connect to the NetworkProcess if appropriate:
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::WebProcess):
+ (WebKit::WebProcess::initializeWebProcess):
+ (WebKit::WebProcess::ensureNetworkProcessConnection):
+ * WebProcess/WebProcess.h:
+
+2012-10-19 Brady Eidson <[email protected]>
+
Add infrastructure for NetworkProcess management
https://bugs.webkit.org/show_bug.cgi?id=99817
Modified: trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp (131962 => 131963)
--- trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp 2012-10-20 00:00:19 UTC (rev 131963)
@@ -46,6 +46,9 @@
#elif PLATFORM(WIN)
, shouldPaintNativeControls(false)
#endif
+#if ENABLE(NETWORK_PROCESS)
+ , usesNetworkProcess(false)
+#endif
{
}
@@ -109,6 +112,10 @@
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
encoder->encode(notificationPermissions);
#endif
+
+#if ENABLE(NETWORK_PROCESS)
+ encoder->encode(usesNetworkProcess);
+#endif
}
bool WebProcessCreationParameters::decode(CoreIPC::ArgumentDecoder* decoder, WebProcessCreationParameters& parameters)
@@ -218,6 +225,11 @@
return false;
#endif
+#if ENABLE(NETWORK_PROCESS)
+ if (!decoder->decode(parameters.usesNetworkProcess))
+ return false;
+#endif
+
return true;
}
Modified: trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h (131962 => 131963)
--- trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h 2012-10-20 00:00:19 UTC (rev 131963)
@@ -127,6 +127,10 @@
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
HashMap<String, bool> notificationPermissions;
#endif
+
+#if ENABLE(NETWORK_PROCESS)
+ bool usesNetworkProcess;
+#endif
};
} // namespace WebKit
Modified: trunk/Source/WebKit2/UIProcess/WebContext.cpp (131962 => 131963)
--- trunk/Source/WebKit2/UIProcess/WebContext.cpp 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/UIProcess/WebContext.cpp 2012-10-20 00:00:19 UTC (rev 131963)
@@ -400,6 +400,10 @@
m_notificationManagerProxy->populateCopyOfNotificationPermissions(parameters.notificationPermissions);
#endif
+#if ENABLE(NETWORK_PROCESS)
+ parameters.usesNetworkProcess = m_usesNetworkProcess;
+#endif
+
// Add any platform specific parameters
platformInitializeWebProcess(parameters);
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (131962 => 131963)
--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2012-10-20 00:00:19 UTC (rev 131963)
@@ -162,6 +162,9 @@
, m_notificationManager(this)
#endif
, m_iconDatabaseProxy(this)
+#if ENABLE(NETWORK_PROCESS)
+ , m_usesNetworkProcess(false)
+#endif
#if USE(SOUP)
, m_soupRequestManager(this)
#endif
@@ -261,6 +264,7 @@
#endif
#if ENABLE(NETWORK_PROCESS)
+ m_usesNetworkProcess = parameters.usesNetworkProcess;
ensureNetworkProcessConnection();
#endif
setTerminationTimeout(parameters.terminationTimeout);
@@ -269,6 +273,9 @@
#if ENABLE(NETWORK_PROCESS)
void WebProcess::ensureNetworkProcessConnection()
{
+ if (!m_usesNetworkProcess)
+ return;
+
if (m_networkProcessConnection)
return;
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (131962 => 131963)
--- trunk/Source/WebKit2/WebProcess/WebProcess.h 2012-10-19 23:57:30 UTC (rev 131962)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h 2012-10-20 00:00:19 UTC (rev 131963)
@@ -349,6 +349,7 @@
#if ENABLE(NETWORK_PROCESS)
void ensureNetworkProcessConnection();
RefPtr<NetworkProcessConnection> m_networkProcessConnection;
+ bool m_usesNetworkProcess;
#endif
#if ENABLE(PLUGIN_PROCESS)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes