Title: [265134] trunk/Source/WebKit
- Revision
- 265134
- Author
- commit-qu...@webkit.org
- Date
- 2020-07-30 23:16:33 -0700 (Thu, 30 Jul 2020)
Log Message
Optimize WebsiteDataStoreConfiguration::copy
https://bugs.webkit.org/show_bug.cgi?id=215012
<rdar://problem/64263406>
Patch by Alex Christensen <achristen...@webkit.org> on 2020-07-30
Reviewed by Brady Eidson.
The WebsiteDataStoreConfiguration constructor does some read/write heavy things.
We only want to do these things if we are not just going to overwrite the strings with strings from another WebsiteDataStoreConfiguration.
No change in behavior, just making things faster.
* UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration):
(WebKit::WebsiteDataStoreConfiguration::copy const):
* UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
(WebKit::WebsiteDataStoreConfiguration::create):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (265133 => 265134)
--- trunk/Source/WebKit/ChangeLog 2020-07-31 06:05:29 UTC (rev 265133)
+++ trunk/Source/WebKit/ChangeLog 2020-07-31 06:16:33 UTC (rev 265134)
@@ -1,3 +1,21 @@
+2020-07-30 Alex Christensen <achristen...@webkit.org>
+
+ Optimize WebsiteDataStoreConfiguration::copy
+ https://bugs.webkit.org/show_bug.cgi?id=215012
+ <rdar://problem/64263406>
+
+ Reviewed by Brady Eidson.
+
+ The WebsiteDataStoreConfiguration constructor does some read/write heavy things.
+ We only want to do these things if we are not just going to overwrite the strings with strings from another WebsiteDataStoreConfiguration.
+ No change in behavior, just making things faster.
+
+ * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
+ (WebKit::WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration):
+ (WebKit::WebsiteDataStoreConfiguration::copy const):
+ * UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
+ (WebKit::WebsiteDataStoreConfiguration::create):
+
2020-07-30 Ryan Haddad <ryanhad...@apple.com>
Unreviewed second attempt to fix Catalyst build after r265084.
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp (265133 => 265134)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2020-07-31 06:05:29 UTC (rev 265133)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp 2020-07-31 06:16:33 UTC (rev 265134)
@@ -30,10 +30,10 @@
namespace WebKit {
-WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration(IsPersistent isPersistent)
+WebsiteDataStoreConfiguration::WebsiteDataStoreConfiguration(IsPersistent isPersistent, WillCopyPathsFromExistingConfiguration willCopyPaths)
: m_isPersistent(isPersistent)
{
- if (isPersistent == IsPersistent::Yes) {
+ if (isPersistent == IsPersistent::Yes && willCopyPaths == WillCopyPathsFromExistingConfiguration::No) {
setApplicationCacheDirectory(WebsiteDataStore::defaultApplicationCacheDirectory());
setCacheStorageDirectory(WebsiteDataStore::defaultCacheStorageDirectory());
setNetworkCacheDirectory(WebsiteDataStore::defaultNetworkCacheDirectory());
@@ -52,7 +52,7 @@
Ref<WebsiteDataStoreConfiguration> WebsiteDataStoreConfiguration::copy() const
{
- auto copy = WebsiteDataStoreConfiguration::create(m_isPersistent);
+ auto copy = WebsiteDataStoreConfiguration::create(m_isPersistent, WillCopyPathsFromExistingConfiguration::Yes);
copy->m_serviceWorkerProcessTerminationDelayEnabled = this->m_serviceWorkerProcessTerminationDelayEnabled;
copy->m_fastServerTrustEvaluationEnabled = this->m_fastServerTrustEvaluationEnabled;
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h (265133 => 265134)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h 2020-07-31 06:05:29 UTC (rev 265133)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h 2020-07-31 06:16:33 UTC (rev 265134)
@@ -33,11 +33,12 @@
namespace WebKit {
enum class IsPersistent : bool { No, Yes };
+enum class WillCopyPathsFromExistingConfiguration : bool { No, Yes };
class WebsiteDataStoreConfiguration : public API::ObjectImpl<API::Object::Type::WebsiteDataStoreConfiguration> {
public:
- static Ref<WebsiteDataStoreConfiguration> create(IsPersistent isPersistent) { return adoptRef(*new WebsiteDataStoreConfiguration(isPersistent)); }
- WebsiteDataStoreConfiguration(IsPersistent);
+ static Ref<WebsiteDataStoreConfiguration> create(IsPersistent isPersistent, WillCopyPathsFromExistingConfiguration willCopyPaths = WillCopyPathsFromExistingConfiguration::No) { return adoptRef(*new WebsiteDataStoreConfiguration(isPersistent, willCopyPaths)); }
+ WebsiteDataStoreConfiguration(IsPersistent, WillCopyPathsFromExistingConfiguration = WillCopyPathsFromExistingConfiguration::No);
Ref<WebsiteDataStoreConfiguration> copy() const;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes