Title: [184677] trunk/Source/WebKit2
- Revision
- 184677
- Author
- [email protected]
- Date
- 2015-05-20 17:10:57 -0700 (Wed, 20 May 2015)
Log Message
Make sure we always have a process pool to perform data store operations with
https://bugs.webkit.org/show_bug.cgi?id=145231
rdar://problem/20618248
Reviewed by Tim Horton.
Make sure that we always return a process pool. If we're a legacy C SPI per-context data store,
find the process pool we're a part of and use that. Otherwise, create a new one.
* UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::processPools):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (184676 => 184677)
--- trunk/Source/WebKit2/ChangeLog 2015-05-20 23:42:08 UTC (rev 184676)
+++ trunk/Source/WebKit2/ChangeLog 2015-05-21 00:10:57 UTC (rev 184677)
@@ -1,3 +1,17 @@
+2015-05-20 Anders Carlsson <[email protected]>
+
+ Make sure we always have a process pool to perform data store operations with
+ https://bugs.webkit.org/show_bug.cgi?id=145231
+ rdar://problem/20618248
+
+ Reviewed by Tim Horton.
+
+ Make sure that we always return a process pool. If we're a legacy C SPI per-context data store,
+ find the process pool we're a part of and use that. Otherwise, create a new one.
+
+ * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+ (WebKit::WebsiteDataStore::processPools):
+
2015-05-19 Jer Noble <[email protected]>
Touching HTMLMediaElement.h or MediaPlayer.h causes a world rebuild.
Modified: trunk/Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp (184676 => 184677)
--- trunk/Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp 2015-05-20 23:42:08 UTC (rev 184676)
+++ trunk/Source/WebKit2/UIProcess/WebsiteData/WebsiteDataStore.cpp 2015-05-21 00:10:57 UTC (rev 184677)
@@ -26,6 +26,7 @@
#include "config.h"
#include "WebsiteDataStore.h"
+#include "APIProcessPoolConfiguration.h"
#include "APIWebsiteDataRecord.h"
#include "StorageManager.h"
#include "WebProcessPool.h"
@@ -734,6 +735,24 @@
for (auto& process : processes())
processPools.add(&process->processPool());
+ if (processPools.isEmpty()) {
+ // Check if we're one of the legacy data stores.
+ for (auto& processPool : WebProcessPool::allProcessPools()) {
+ if (auto dataStore = processPool->websiteDataStore()) {
+ if (&dataStore->websiteDataStore() == this) {
+ processPools.add(processPool);
+ break;
+ }
+ }
+ }
+ }
+
+ if (processPools.isEmpty()) {
+ auto processPool = WebProcessPool::create(API::ProcessPoolConfiguration::create());
+
+ processPools.add(processPool.ptr());
+ }
+
return processPools;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes