Title: [92713] trunk/Source/WebKit2
- Revision
- 92713
- Author
- ander...@apple.com
- Date
- 2011-08-09 14:52:55 -0700 (Tue, 09 Aug 2011)
Log Message
Add a user default to disable the plug-in process message timeout
https://bugs.webkit.org/show_bug.cgi?id=65945
Reviewed by Adam Roben.
* Shared/WebProcessCreationParameters.cpp:
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):
* Shared/WebProcessCreationParameters.h:
Add a disablePluginProcessMessageTimeout member variable.
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
Initialize the disablePluginProcessMessageTimeout member variable from the
"DisablePluginProcessMessageTimeout" user default.
* WebProcess/Plugins/PluginProcessConnection.cpp:
(WebKit::defaultSyncMessageTimeout):
Return NoTimeout if WebProcess::disablePluginProcessMessageTimeout returns true.
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):
Initialize m_disablePluginProcessMessageTimeout.
* WebProcess/WebProcess.h:
(WebKit::WebProcess::disablePluginProcessMessageTimeout):
Add getter.
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (92712 => 92713)
--- trunk/Source/WebKit2/ChangeLog 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/ChangeLog 2011-08-09 21:52:55 UTC (rev 92713)
@@ -1,3 +1,34 @@
+2011-08-09 Anders Carlsson <ander...@apple.com>
+
+ Add a user default to disable the plug-in process message timeout
+ https://bugs.webkit.org/show_bug.cgi?id=65945
+
+ Reviewed by Adam Roben.
+
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ Add a disablePluginProcessMessageTimeout member variable.
+
+ * UIProcess/mac/WebContextMac.mm:
+ (WebKit::WebContext::platformInitializeWebProcess):
+ Initialize the disablePluginProcessMessageTimeout member variable from the
+ "DisablePluginProcessMessageTimeout" user default.
+
+ * WebProcess/Plugins/PluginProcessConnection.cpp:
+ (WebKit::defaultSyncMessageTimeout):
+ Return NoTimeout if WebProcess::disablePluginProcessMessageTimeout returns true.
+
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::WebProcess):
+ (WebKit::WebProcess::initializeWebProcess):
+ Initialize m_disablePluginProcessMessageTimeout.
+
+ * WebProcess/WebProcess.h:
+ (WebKit::WebProcess::disablePluginProcessMessageTimeout):
+ Add getter.
+
2011-08-09 Mark Hahnenberg <mhahnenb...@apple.com>
Add ParentClass typedef in all JSC classes
Modified: trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp (92712 => 92713)
--- trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/Shared/WebProcessCreationParameters.cpp 2011-08-09 21:52:55 UTC (rev 92713)
@@ -61,6 +61,9 @@
encoder->encode(shouldTrackVisitedLinks);
encoder->encode(shouldAlwaysUseComplexTextCodePath);
encoder->encode(iconDatabaseEnabled);
+#if ENABLE(PLUGIN_PROCESS)
+ encoder->encode(disablePluginProcessMessageTimeout);
+#endif
encoder->encode(languageCode);
encoder->encode(textCheckerState);
encoder->encode(defaultRequestTimeoutInterval);
@@ -118,6 +121,11 @@
return false;
if (!decoder->decode(parameters.iconDatabaseEnabled))
return false;
+#if ENABLE(PLUGIN_PROCESS)
+ if (!decoder->decode(parameters.disablePluginProcessMessageTimeout))
+ return false;
+#endif
+
if (!decoder->decode(parameters.languageCode))
return false;
if (!decoder->decode(parameters.textCheckerState))
Modified: trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h (92712 => 92713)
--- trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/Shared/WebProcessCreationParameters.h 2011-08-09 21:52:55 UTC (rev 92713)
@@ -70,6 +70,10 @@
bool iconDatabaseEnabled;
+#if ENABLE(PLUGIN_PROCESS)
+ bool disablePluginProcessMessageTimeout;
+#endif
+
String languageCode;
TextCheckerState textCheckerState;
Modified: trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm (92712 => 92713)
--- trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/UIProcess/mac/WebContextMac.mm 2011-08-09 21:52:55 UTC (rev 92713)
@@ -86,6 +86,10 @@
ASSERT(!parameters.nsURLCachePath.isEmpty());
+#if ENABLE(PLUGIN_PROCESS)
+ parameters.disablePluginProcessMessageTimeout = [[NSUserDefaults standardUserDefaults] boolForKey:@"DisablePluginProcessMessageTimeout"];
+#endif
+
#if USE(ACCELERATED_COMPOSITING) && HAVE(HOSTED_CORE_ANIMATION)
mach_port_t renderServerPort = WKInitializeRenderServer();
if (renderServerPort != MACH_PORT_NULL)
Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp (92712 => 92713)
--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp 2011-08-09 21:52:55 UTC (rev 92713)
@@ -64,6 +64,9 @@
if (pathGetFileName(pluginPath) == "PersonalPlugin.bundle")
return CoreIPC::Connection::NoTimeout;
+ if (WebProcess::shared().disablePluginProcessMessageTimeout())
+ return CoreIPC::Connection::NoTimeout;
+
return syncMessageTimeout;
}
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.cpp (92712 => 92713)
--- trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.cpp 2011-08-09 21:52:55 UTC (rev 92713)
@@ -134,6 +134,9 @@
, m_textCheckerState()
, m_geolocationManager(this)
, m_iconDatabaseProxy(this)
+#if ENABLE(PLUGIN_PROCESS)
+ , m_disablePluginProcessMessageTimeout(false)
+#endif
{
#if USE(PLATFORM_STRATEGIES)
// Initialize our platform strategies.
@@ -233,6 +236,10 @@
#if USE(CFURLSTORAGESESSIONS)
WebCore::ResourceHandle::setPrivateBrowsingStorageSessionIdentifierBase(parameters.uiProcessBundleIdentifier);
#endif
+
+#if ENABLE(PLUGIN_PROCESS)
+ m_disablePluginProcessMessageTimeout = parameters.disablePluginProcessMessageTimeout;
+#endif
}
void WebProcess::setShouldTrackVisitedLinks(bool shouldTrackVisitedLinks)
Modified: trunk/Source/WebKit2/WebProcess/WebProcess.h (92712 => 92713)
--- trunk/Source/WebKit2/WebProcess/WebProcess.h 2011-08-09 21:52:39 UTC (rev 92712)
+++ trunk/Source/WebKit2/WebProcess/WebProcess.h 2011-08-09 21:52:55 UTC (rev 92713)
@@ -126,6 +126,7 @@
#if ENABLE(PLUGIN_PROCESS)
PluginProcessConnectionManager& pluginProcessConnectionManager() { return m_pluginProcessConnectionManager; }
+ bool disablePluginProcessMessageTimeout() const { return m_disablePluginProcessMessageTimeout; }
#endif
private:
@@ -240,7 +241,9 @@
#if ENABLE(PLUGIN_PROCESS)
PluginProcessConnectionManager m_pluginProcessConnectionManager;
+ bool m_disablePluginProcessMessageTimeout;
#endif
+
};
} // namespace WebKit
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes