Bug 258603
Summary: | Harmonize the hosts/domain name testing in Quirks | ||
---|---|---|---|
Product: | WebKit | Reporter: | Karl Dubost <karlcow> |
Component: | New Bugs | Assignee: | Nobody <webkit-unassigned> |
Status: | NEW | ||
Severity: | Normal | CC: | webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | Safari 17 | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Bug Depends on: | 267623, 260938 | ||
Bug Blocks: |
Karl Dubost
Currently the Quirks.cpp file has a couple of different ways of testing for the domain name of a site where the Quirk should apply.
https://github.com/WebKit/WebKit/blame/main/Source/WebCore/page/Quirks.cpp
This is probably due to layer of history.
It would probably be better to choose a "better"/more recent way of doing things.
top domain equality
equalLettersIgnoringASCIICase(host, domain)
host == domain
partial_domain end
host.endsWithIgnoringASCIICase(partial_domain)
host.endsWith(partial_domain)
partial_domain start
startsWithLettersIgnoringASCIICase(host, domain)
host.toString()).startsWith(partial_domain)
There is also
topPrivatelyControlledDomain(host.toString()).startsWith("expedia."_s))
The recommended way is probably to use
class WebCore::RegistrableDomain and its methods
see
https://github.com/WebKit/WebKit/blob/main/Source/WebCore/platform/RegistrableDomain.h
https://github.com/WebKit/WebKit/blob/main/Tools/TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/111433802>
Karl Dubost
How do we improve this a bit more.
In Bug 260938 isDomain() was created
but probably, there is a need for more generic functions.