Diff
Modified: trunk/Source/WebKit/ChangeLog (290581 => 290582)
--- trunk/Source/WebKit/ChangeLog 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/ChangeLog 2022-02-28 05:09:32 UTC (rev 290582)
@@ -1,3 +1,24 @@
+2022-02-27 Sihui Liu <[email protected]>
+
+ Add a feature flag for using general storage directory
+ https://bugs.webkit.org/show_bug.cgi?id=237186
+ rdar://89521373
+
+ Reviewed by Chris Dumez.
+
+ * FeatureFlags/WebKit-appletvos.plist:
+ * FeatureFlags/WebKit-ios.plist:
+ * FeatureFlags/WebKit-macos.plist:
+ * FeatureFlags/WebKit-watchos.plist:
+ * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
+ (WebKit::WebsiteDataStore::defaultShouldUseCustomStoragePaths):
+ * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+ (WebKit::WebsiteDataStore::defaultShouldUseCustomStoragePaths):
+ * UIProcess/WebsiteData/WebsiteDataStore.h:
+ * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
+ (WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration):
+ * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
+
2022-02-27 Said Abou-Hallawa <[email protected]>
[GPU Process] Deleted unneeded constructors from DisplayList::Recorder classes
Modified: trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist (290581 => 290582)
--- trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-appletvos.plist 2022-02-28 05:09:32 UTC (rev 290582)
@@ -92,5 +92,10 @@
<key>Enabled</key>
<true/>
</dict>
+ <key>general_directory_for_storage</key>
+ <dict>
+ <key>Enabled</key>
+ <false/>
+ </dict>
</dict>
</plist>
Modified: trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist (290581 => 290582)
--- trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-ios.plist 2022-02-28 05:09:32 UTC (rev 290582)
@@ -92,5 +92,10 @@
<key>Enabled</key>
<true/>
</dict>
+ <key>general_directory_for_storage</key>
+ <dict>
+ <key>Enabled</key>
+ <false/>
+ </dict>
</dict>
</plist>
Modified: trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist (290581 => 290582)
--- trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-macos.plist 2022-02-28 05:09:32 UTC (rev 290582)
@@ -97,5 +97,10 @@
<key>Enabled</key>
<true/>
</dict>
+ <key>general_directory_for_storage</key>
+ <dict>
+ <key>Enabled</key>
+ <false/>
+ </dict>
</dict>
</plist>
Modified: trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist (290581 => 290582)
--- trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/FeatureFlags/WebKit-watchos.plist 2022-02-28 05:09:32 UTC (rev 290582)
@@ -92,5 +92,10 @@
<key>Enabled</key>
<true/>
</dict>
+ <key>general_directory_for_storage</key>
+ <dict>
+ <key>Enabled</key>
+ <false/>
+ </dict>
</dict>
</plist>
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm (290581 => 290582)
--- trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm 2022-02-28 05:09:32 UTC (rev 290582)
@@ -32,6 +32,7 @@
#import "SandboxUtilities.h"
#import "StorageManager.h"
#import "WebFramePolicyListenerProxy.h"
+#import "WebPreferencesDefaultValues.h"
#import "WebPreferencesKeys.h"
#import "WebProcessProxy.h"
#import "WebResourceLoadStatisticsStore.h"
@@ -616,4 +617,10 @@
return WTF::hasEntitlement(networkProcess().connection()->xpcConnection(), entitlement.utf8().data());
}
+bool WebsiteDataStore::defaultShouldUseCustomStoragePaths()
+{
+ static const bool useGeneralStorageDirectory = isFeatureFlagEnabled("general_directory_for_storage"_s);
+ return !useGeneralStorageDirectory;
}
+
+}
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp (290581 => 290582)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp 2022-02-28 05:09:32 UTC (rev 290582)
@@ -1976,6 +1976,11 @@
{
return false;
}
+
+bool WebsiteDataStore::defaultShouldUseCustomStoragePaths()
+{
+ return true;
+}
#endif // !PLATFORM(COCOA)
#if !USE(GLIB) && !PLATFORM(COCOA)
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h (290581 => 290582)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h 2022-02-28 05:09:32 UTC (rev 290582)
@@ -353,6 +353,7 @@
static WTF::String defaultJavaScriptConfigurationDirectory();
static bool http3Enabled();
static constexpr uint64_t defaultPerOriginQuota() { return 1000 * MB; }
+ static bool defaultShouldUseCustomStoragePaths();
void resetQuota(CompletionHandler<void()>&&);
void clearStorage(CompletionHandler<void()>&&);
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp (290581 => 290582)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2022-02-28 05:09:32 UTC (rev 290582)
@@ -33,6 +33,7 @@
WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration(IsPersistent isPersistent, WillCopyPathsFromExistingConfiguration willCopyPaths)
: m_isPersistent(isPersistent)
+ , m_shouldUseCustomStoragePaths(WebsiteDataStore::defaultShouldUseCustomStoragePaths())
, m_perOriginStorageQuota(WebsiteDataStore::defaultPerOriginQuota())
{
if (isPersistent == IsPersistent::Yes && willCopyPaths == WillCopyPathsFromExistingConfiguration::No) {
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h (290581 => 290582)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h 2022-02-28 04:17:48 UTC (rev 290581)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h 2022-02-28 05:09:32 UTC (rev 290582)
@@ -207,7 +207,7 @@
private:
IsPersistent m_isPersistent { IsPersistent::No };
- bool m_shouldUseCustomStoragePaths { true };
+ bool m_shouldUseCustomStoragePaths;
String m_cacheStorageDirectory;
String m_generalStorageDirectory;
uint64_t m_perOriginStorageQuota;