Title: [156279] trunk/Source/WebKit2
Revision
156279
Author
wei...@apple.com
Date
2013-09-23 10:50:55 -0700 (Mon, 23 Sep 2013)

Log Message

Add back the SharedWorkerStrategy to prevent crashing.

* WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
(WebKit::WebPlatformStrategies::createSharedWorkerStrategy):
(WebKit::WebPlatformStrategies::isAvailable):
* WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (156278 => 156279)


--- trunk/Source/WebKit2/ChangeLog	2013-09-23 17:43:04 UTC (rev 156278)
+++ trunk/Source/WebKit2/ChangeLog	2013-09-23 17:50:55 UTC (rev 156279)
@@ -1,5 +1,14 @@
 2013-09-23  Sam Weinig  <s...@webkit.org>
 
+        Add back the SharedWorkerStrategy to prevent crashing.
+
+        * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
+        (WebKit::WebPlatformStrategies::createSharedWorkerStrategy):
+        (WebKit::WebPlatformStrategies::isAvailable):
+        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
+
+2013-09-23  Sam Weinig  <s...@webkit.org>
+
         SharedWorkerProcess code is dead
         https://bugs.webkit.org/show_bug.cgi?id=121563
 

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp (156278 => 156279)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp	2013-09-23 17:43:04 UTC (rev 156278)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.cpp	2013-09-23 17:50:55 UTC (rev 156279)
@@ -111,7 +111,7 @@
 
 SharedWorkerStrategy* WebPlatformStrategies::createSharedWorkerStrategy()
 {
-    return 0;
+    return this;
 }
 
 StorageStrategy* WebPlatformStrategies::createStorageStrategy()
@@ -309,6 +309,18 @@
 #endif // ENABLE(NETSCAPE_PLUGIN_API)
 }
 
+// SharedWorkerStrategy
+
+bool WebPlatformStrategies::isAvailable() const
+{
+    // Shared workers do not work across multiple processes, and using network process is tied to multiple secondary process model. 
+#if ENABLE(NETWORK_PROCESS) 
+    return !WebProcess::shared().usesNetworkProcess(); 
+#else 
+    return true; 
+#endif
+}
+
 #if ENABLE(NETSCAPE_PLUGIN_API)
 void WebPlatformStrategies::populatePluginCache()
 {

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h (156278 => 156279)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h	2013-09-23 17:43:04 UTC (rev 156278)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebPlatformStrategies.h	2013-09-23 17:50:55 UTC (rev 156279)
@@ -32,12 +32,13 @@
 #include <WebCore/PasteboardStrategy.h>
 #include <WebCore/PlatformStrategies.h>
 #include <WebCore/PluginStrategy.h>
+#include <WebCore/SharedWorkerStrategy.h>
 #include <WebCore/StorageStrategy.h>
 #include <WebCore/VisitedLinkStrategy.h>
 
 namespace WebKit {
 
-class WebPlatformStrategies : public WebCore::PlatformStrategies, private WebCore::CookiesStrategy, private WebCore::DatabaseStrategy, private WebCore::LoaderStrategy, private WebCore::PasteboardStrategy, private WebCore::PluginStrategy, private WebCore::StorageStrategy, private WebCore::VisitedLinkStrategy {
+class WebPlatformStrategies : public WebCore::PlatformStrategies, private WebCore::CookiesStrategy, private WebCore::DatabaseStrategy, private WebCore::LoaderStrategy, private WebCore::PasteboardStrategy, private WebCore::PluginStrategy, private WebCore::SharedWorkerStrategy, private WebCore::StorageStrategy, private WebCore::VisitedLinkStrategy {
 public:
     static void initialize();
     
@@ -80,6 +81,9 @@
     virtual void refreshPlugins() OVERRIDE;
     virtual void getPluginInfo(const WebCore::Page*, Vector<WebCore::PluginInfo>&) OVERRIDE;
 
+    // WebCore::SharedWorkerStrategy
+    virtual bool isAvailable() const OVERRIDE;
+
     // WebCore::StorageStrategy.
     virtual PassRefPtr<WebCore::StorageNamespace> localStorageNamespace(WebCore::PageGroup*) OVERRIDE;
     virtual PassRefPtr<WebCore::StorageNamespace> transientLocalStorageNamespace(WebCore::PageGroup*, WebCore::SecurityOrigin*) OVERRIDE;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to