Diff
Modified: trunk/Source/WebKit2/ChangeLog (217742 => 217743)
--- trunk/Source/WebKit2/ChangeLog 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/ChangeLog 2017-06-02 23:48:50 UTC (rev 217743)
@@ -1,3 +1,26 @@
+2017-06-02 Chris Dumez <cdu...@apple.com>
+
+ ResourceLoadStatistics are not using unique paths during test runs
+ https://bugs.webkit.org/show_bug.cgi?id=172861
+ <rdar://problem/32442251>
+
+ Reviewed by Darin Adler.
+
+ Add WKContextConfigurationSetResourceLoadStatisticsDirectory() C API to allow
+ WKTR to use a custom directory.
+
+ * UIProcess/API/APIProcessPoolConfiguration.cpp:
+ (API::ProcessPoolConfiguration::createWithWebsiteDataStoreConfiguration):
+ (API::ProcessPoolConfiguration::ProcessPoolConfiguration):
+ (API::ProcessPoolConfiguration::copy):
+ * UIProcess/API/APIProcessPoolConfiguration.h:
+ * UIProcess/API/C/WKContextConfigurationRef.cpp:
+ (WKContextConfigurationCopyResourceLoadStatisticsDirectory):
+ (WKContextConfigurationSetResourceLoadStatisticsDirectory):
+ * UIProcess/API/C/WKContextConfigurationRef.h:
+ * UIProcess/WebProcessPool.cpp:
+ (WebKit::legacyWebsiteDataStoreConfiguration):
+
2017-06-02 Brady Eidson <beid...@apple.com>
Prevent scheme handlers from handling all built-in URL schemes.
Modified: trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp (217742 => 217743)
--- trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.cpp 2017-06-02 23:48:50 UTC (rev 217743)
@@ -68,6 +68,7 @@
configuration->m_indexedDBDatabaseDirectory = WebKit::WebProcessPool::legacyPlatformDefaultIndexedDBDatabaseDirectory();
configuration->m_localStorageDirectory = legacyConfiguration.localStorageDirectory;
configuration->m_mediaKeysStorageDirectory = legacyConfiguration.mediaKeysStorageDirectory;
+ configuration->m_resourceLoadStatisticsDirectory = legacyConfiguration.resourceLoadStatisticsDirectory;
configuration->m_webSQLDatabaseDirectory = legacyConfiguration.webSQLDatabaseDirectory;
return configuration;
@@ -82,6 +83,7 @@
, m_localStorageDirectory(WebsiteDataStore::defaultLocalStorageDirectory())
, m_webSQLDatabaseDirectory(WebsiteDataStore::defaultWebSQLDatabaseDirectory())
, m_mediaKeysStorageDirectory(WebsiteDataStore::defaultMediaKeysStorageDirectory())
+ , m_resourceLoadStatisticsDirectory(WebsiteDataStore::defaultResourceLoadStatisticsDirectory())
, m_javaScriptConfigurationDirectory(WebsiteDataStore::defaultJavaScriptConfigurationDirectory())
{
}
@@ -107,6 +109,7 @@
copy->m_injectedBundlePath = this->m_injectedBundlePath;
copy->m_localStorageDirectory = this->m_localStorageDirectory;
copy->m_mediaKeysStorageDirectory = this->m_mediaKeysStorageDirectory;
+ copy->m_resourceLoadStatisticsDirectory = this->m_resourceLoadStatisticsDirectory;
copy->m_javaScriptConfigurationDirectory = this->m_javaScriptConfigurationDirectory;
copy->m_webSQLDatabaseDirectory = this->m_webSQLDatabaseDirectory;
copy->m_cachePartitionedURLSchemes = this->m_cachePartitionedURLSchemes;
Modified: trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.h (217742 => 217743)
--- trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.h 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/UIProcess/API/APIProcessPoolConfiguration.h 2017-06-02 23:48:50 UTC (rev 217743)
@@ -87,6 +87,9 @@
const WTF::String& mediaKeysStorageDirectory() const { return m_mediaKeysStorageDirectory; }
void setMediaKeysStorageDirectory(const WTF::String& mediaKeysStorageDirectory) { m_mediaKeysStorageDirectory = mediaKeysStorageDirectory; }
+ const WTF::String& resourceLoadStatisticsDirectory() const { return m_resourceLoadStatisticsDirectory; }
+ void setResourceLoadStatisticsDirectory(const WTF::String& resourceLoadStatisticsDirectory) { m_resourceLoadStatisticsDirectory = resourceLoadStatisticsDirectory; }
+
const WTF::String& _javascript_ConfigurationDirectory() const { return m_javaScriptConfigurationDirectory; }
void setJavaScriptConfigurationDirectory(const WTF::String& _javascript_ConfigurationDirectory) { m_javaScriptConfigurationDirectory = _javascript_ConfigurationDirectory; }
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.cpp (217742 => 217743)
--- trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.cpp 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.cpp 2017-06-02 23:48:50 UTC (rev 217743)
@@ -118,6 +118,16 @@
toImpl(configuration)->setMediaKeysStorageDirectory(toImpl(mediaKeysStorageDirectory)->string());
}
+WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration)
+{
+ return toCopiedAPI(toImpl(configuration)->resourceLoadStatisticsDirectory());
+}
+
+void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration, WKStringRef resourceLoadStatisticsDirectory)
+{
+ toImpl(configuration)->setResourceLoadStatisticsDirectory(toImpl(resourceLoadStatisticsDirectory)->string());
+}
+
bool WKContextConfigurationFullySynchronousModeIsAllowedForTesting(WKContextConfigurationRef configuration)
{
return toImpl(configuration)->fullySynchronousModeIsAllowedForTesting();
Modified: trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.h (217742 => 217743)
--- trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.h 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/UIProcess/API/C/WKContextConfigurationRef.h 2017-06-02 23:48:50 UTC (rev 217743)
@@ -56,6 +56,9 @@
WK_EXPORT WKStringRef WKContextConfigurationCopyMediaKeysStorageDirectory(WKContextConfigurationRef configuration);
WK_EXPORT void WKContextConfigurationSetMediaKeysStorageDirectory(WKContextConfigurationRef configuration, WKStringRef mediaKeysStorageDirectory);
+WK_EXPORT WKStringRef WKContextConfigurationCopyResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration);
+WK_EXPORT void WKContextConfigurationSetResourceLoadStatisticsDirectory(WKContextConfigurationRef configuration, WKStringRef resourceLoadStatisticsDirectory);
+
WK_EXPORT bool WKContextConfigurationFullySynchronousModeIsAllowedForTesting(WKContextConfigurationRef configuration);
WK_EXPORT void WKContextConfigurationSetFullySynchronousModeIsAllowedForTesting(WKContextConfigurationRef configuration, bool allowed);
Modified: trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp (217742 => 217743)
--- trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Source/WebKit2/UIProcess/WebProcessPool.cpp 2017-06-02 23:48:50 UTC (rev 217743)
@@ -199,12 +199,10 @@
configuration.applicationCacheFlatFileSubdirectoryName = processPoolConfiguration.applicationCacheFlatFileSubdirectoryName();
configuration.mediaCacheDirectory = processPoolConfiguration.mediaCacheDirectory();
configuration.mediaKeysStorageDirectory = processPoolConfiguration.mediaKeysStorageDirectory();
+ configuration.resourceLoadStatisticsDirectory = processPoolConfiguration.resourceLoadStatisticsDirectory();
configuration.networkCacheDirectory = processPoolConfiguration.diskCacheDirectory();
configuration._javascript_ConfigurationDirectory = processPoolConfiguration._javascript_ConfigurationDirectory();
- // This is needed to support legacy WK2 clients, which did not have resource load statistics.
- configuration.resourceLoadStatisticsDirectory = API::WebsiteDataStore::defaultResourceLoadStatisticsDirectory();
-
return configuration;
}
Modified: trunk/Tools/ChangeLog (217742 => 217743)
--- trunk/Tools/ChangeLog 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Tools/ChangeLog 2017-06-02 23:48:50 UTC (rev 217743)
@@ -1,3 +1,17 @@
+2017-06-02 Chris Dumez <cdu...@apple.com>
+
+ ResourceLoadStatistics are not using unique paths during test runs
+ https://bugs.webkit.org/show_bug.cgi?id=172861
+ <rdar://problem/32442251>
+
+ Reviewed by Darin Adler.
+
+ Make sure WebKitTestRunner sets a temporary path for saving resource
+ load statistics.
+
+ * WebKitTestRunner/TestController.cpp:
+ (WTR::TestController::generateContextConfiguration):
+
2017-06-02 Brady Eidson <beid...@apple.com>
Prevent scheme handlers from handling all built-in URL schemes.
Modified: trunk/Tools/WebKitTestRunner/TestController.cpp (217742 => 217743)
--- trunk/Tools/WebKitTestRunner/TestController.cpp 2017-06-02 23:40:07 UTC (rev 217742)
+++ trunk/Tools/WebKitTestRunner/TestController.cpp 2017-06-02 23:48:50 UTC (rev 217743)
@@ -409,6 +409,7 @@
WKContextConfigurationSetLocalStorageDirectory(configuration.get(), toWK(temporaryFolder + separator + "LocalStorage").get());
WKContextConfigurationSetWebSQLDatabaseDirectory(configuration.get(), toWK(temporaryFolder + separator + "Databases" + separator + "WebSQL").get());
WKContextConfigurationSetMediaKeysStorageDirectory(configuration.get(), toWK(temporaryFolder + separator + "MediaKeys").get());
+ WKContextConfigurationSetResourceLoadStatisticsDirectory(configuration.get(), toWK(temporaryFolder + separator + "ResourceLoadStatistics").get());
}
return configuration;
}