[webkit-changes] [WebKit/WebKit] 6d61bd: Update UTF-16 handling of URLPatternUtilities::Tok...

youennf noreply at github.com
Thu Jan 16 23:27:17 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 6d61bd1c4f0ae6b6da4dcfd6a748bd848fcc7b56
      https://github.com/WebKit/WebKit/commit/6d61bd1c4f0ae6b6da4dcfd6a748bd848fcc7b56
  Author: Youenn Fablet <youenn at apple.com>
  Date:   2025-01-16 (Thu, 16 Jan 2025)

  Changed paths:
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/resources/urlpatterntestdata.json
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.serviceworker-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.sharedworker-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.worker-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.serviceworker-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.sharedworker-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.worker-expected.txt
    M Source/WebCore/Modules/url-pattern/URLPatternTokenizer.cpp
    M Source/WebCore/Modules/url-pattern/URLPatternTokenizer.h

  Log Message:
  -----------
  Update UTF-16 handling of URLPatternUtilities::Tokenizer::getNextCodePoint()
rdar://143033714
https://bugs.webkit.org/show_bug.cgi?id=286058

Reviewed by Anne van Kesteren.

Tokenizer is expected to process code points.
We should treat surrogate pairs as a single code point.
Dangling surrogates should also be handled as a single code point.

We update URLPatternUtilities::Tokenizer::getNextCodePoint accordingly and add some tests that cover UTF-16 surrogates.

We add some WPT tests to cover the changes.

* LayoutTests/imported/w3c/web-platform-tests/urlpattern/resources/urlpatterntestdata.json:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.serviceworker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.sharedworker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.any.worker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.serviceworker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.sharedworker-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/urlpattern/urlpattern.https.any.worker-expected.txt:
* Source/WebCore/Modules/url-pattern/URLPatternTokenizer.cpp:
(WebCore::URLPatternUtilities::Tokenizer::getNextCodePoint):
* Source/WebCore/Modules/url-pattern/URLPatternTokenizer.h:

Canonical link: https://commits.webkit.org/289045@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list