Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 68f5a2f24c94431e60a9517543ad28b25e5809c3
      
https://github.com/WebKit/WebKit/commit/68f5a2f24c94431e60a9517543ad28b25e5809c3
  Author: Youenn Fablet <[email protected]>
  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


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to