Title: [237366] trunk/Source/WebCore
- Revision
- 237366
- Author
- [email protected]
- Date
- 2018-10-23 13:53:20 -0700 (Tue, 23 Oct 2018)
Log Message
Unreviewed, rolling out r237357.
API test is now failing on all platforms.
Reverted changeset:
"topPrivatelyControlledDomain is slow"
https://bugs.webkit.org/show_bug.cgi?id=190792
https://trac.webkit.org/changeset/237357
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (237365 => 237366)
--- trunk/Source/WebCore/ChangeLog 2018-10-23 20:36:37 UTC (rev 237365)
+++ trunk/Source/WebCore/ChangeLog 2018-10-23 20:53:20 UTC (rev 237366)
@@ -1,5 +1,17 @@
2018-10-23 Truitt Savell <[email protected]>
+ Unreviewed, rolling out r237357.
+
+ API test is now failing on all platforms.
+
+ Reverted changeset:
+
+ "topPrivatelyControlledDomain is slow"
+ https://bugs.webkit.org/show_bug.cgi?id=190792
+ https://trac.webkit.org/changeset/237357
+
+2018-10-23 Truitt Savell <[email protected]>
+
Unreviewed, rolling out r237350.
Caused several Crashes cross multiple tests and platforms.
Modified: trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm (237365 => 237366)
--- trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm 2018-10-23 20:36:37 UTC (rev 237365)
+++ trunk/Source/WebCore/platform/mac/PublicSuffixMac.mm 2018-10-23 20:53:20 UTC (rev 237366)
@@ -31,8 +31,6 @@
#import "URL.h"
#import "WebCoreNSURLExtras.h"
#import <pal/spi/cf/CFNetworkSPI.h>
-#import <wtf/HashMap.h>
-#import <wtf/text/StringHash.h>
namespace WebCore {
@@ -45,35 +43,22 @@
String topPrivatelyControlledDomain(const String& domain)
{
- if (domain.isEmpty() || !domain.isAllASCII())
+ if (URL::hostIsIPAddress(domain))
return domain;
- static NeverDestroyed<HashMap<String, String, ASCIICaseInsensitiveHash>> cache;
- static Lock cacheLock;
+ if (!domain.isAllASCII())
+ return domain;
+
+ const auto& lowercaseDomain = domain.convertToASCIILowercase();
+ if (lowercaseDomain == "localhost")
+ return lowercaseDomain;
- auto isolatedDomain = domain.isolatedCopy();
-
- auto locker = holdLock(cacheLock);
-
- constexpr auto maximumSizeToPreventUnlimitedGrowth = 128;
- if (cache.get().size() == maximumSizeToPreventUnlimitedGrowth)
- cache.get().clear();
-
- return cache.get().ensure(isolatedDomain, [&isolatedDomain] {
- const auto lowercaseDomain = isolatedDomain.convertToASCIILowercase();
- if (lowercaseDomain == "localhost")
- return lowercaseDomain;
-
- if (URL::hostIsIPAddress(lowercaseDomain))
- return lowercaseDomain;
-
- size_t separatorPosition;
- for (unsigned labelStart = 0; (separatorPosition = lowercaseDomain.find('.', labelStart)) != notFound; labelStart = separatorPosition + 1) {
- if (isPublicSuffix(lowercaseDomain.substring(separatorPosition + 1)))
- return lowercaseDomain.substring(labelStart);
- }
- return String();
- }).iterator->value.isolatedCopy();
+ size_t separatorPosition;
+ for (unsigned labelStart = 0; (separatorPosition = lowercaseDomain.find('.', labelStart)) != notFound; labelStart = separatorPosition + 1) {
+ if (isPublicSuffix(lowercaseDomain.substring(separatorPosition + 1)))
+ return lowercaseDomain.substring(labelStart);
+ }
+ return String();
}
String decodeHostName(const String& domain)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes