[webkit-changes] [WebKit/WebKit] 68f5a2: [Fetch API] Headers iteration should not happen on...

youennf noreply at github.com
Mon Oct 17 12:06:50 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68f5a2f24c94431e60a9517543ad28b25e5809c3
      https://github.com/WebKit/WebKit/commit/68f5a2f24c94431e60a9517543ad28b25e5809c3
  Author: Youenn Fablet <youennf at gmail.com>
  Date:   2022-10-17 (Mon, 17 Oct 2022)

  Changed paths:
    M LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any-expected.txt
    M LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any.js
    M LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any.worker-expected.txt
    M Source/WebCore/Modules/fetch/FetchHeaders.cpp
    M Source/WebCore/Modules/fetch/FetchHeaders.h

  Log Message:
  -----------
  [Fetch API] Headers iteration should not happen on cached headers list
https://bugs.webkit.org/show_bug.cgi?id=246526
rdar://problem/101235580

Reviewed by Chris Dumez.

We introduce a change counter that is incremented anytime a JS API is mutating the headers (append, delete, set).
We recreate the header list as needed, either on the first time or if the change counter tells us to do so.

Covered by resynced WPT tests.

* LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any-expected.txt:
* LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any.js:
(test):
* LayoutTests/imported/w3c/web-platform-tests/fetch/api/headers/headers-basic.any.worker-expected.txt:
* Source/WebCore/Modules/fetch/FetchHeaders.cpp:
(WebCore::FetchHeaders::append):
(WebCore::FetchHeaders::remove):
(WebCore::FetchHeaders::set):
(WebCore::FetchHeaders::Iterator::next):
(WebCore::FetchHeaders::Iterator::Iterator):
* Source/WebCore/Modules/fetch/FetchHeaders.h:

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




More information about the webkit-changes mailing list