[webkit-changes] [WebKit/WebKit] 205444: URI Fragments Cached After 301 Redirect

Brandon Stewart noreply at github.com
Mon Jul 10 10:04:36 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 205444531ae8c5213c84b0b63cd0d6ec51cf7735
      https://github.com/WebKit/WebKit/commit/205444531ae8c5213c84b0b63cd0d6ec51cf7735
  Author: Brandon Stewart <brandonstewart at apple.com>
  Date:   2023-07-10 (Mon, 10 Jul 2023)

  Changed paths:
    A LayoutTests/http/tests/links/redirect-301-clear-memory-cache-expected.txt
    A LayoutTests/http/tests/links/redirect-301-clear-memory-cache.html
    A LayoutTests/http/tests/links/redirect-301-no-inital-fragments-expected.txt
    A LayoutTests/http/tests/links/redirect-301-no-inital-fragments.html
    A LayoutTests/http/tests/links/redirect-301-with-fragments-expected.txt
    A LayoutTests/http/tests/links/redirect-301-with-fragments.html
    A LayoutTests/http/tests/links/resources/redirect-helper.pl
    A LayoutTests/http/tests/links/resources/redirect-target.html
    M Source/WebCore/loader/cache/CachedResource.cpp
    M Source/WebCore/loader/cache/CachedResourceLoader.cpp
    M Source/WebCore/loader/cache/CachedResourceRequest.h
    M Source/WebKit/NetworkProcess/cache/NetworkCache.cpp
    M Source/WebKit/NetworkProcess/cache/NetworkCache.h

  Log Message:
  -----------
  URI Fragments Cached After 301 Redirect
https://bugs.webkit.org/show_bug.cgi?id=255924
rdar://problem/108535944

Reviewed by Youenn Fablet.

We end up reusing the fragments when performing a redirect and as such end up serving old parameters.
For now we will just disable caching redirects with fragments. This is a temporary fix; a more proper
solution of handling fragment caching in the future is required.

* LayoutTests/http/tests/links/redirect-301-clear-memory-cache-expected.txt: Added.
* LayoutTests/http/tests/links/redirect-301-clear-memory-cache.html: Added.
* LayoutTests/http/tests/links/redirect-301-no-inital-fragments-expected.txt: Added.
* LayoutTests/http/tests/links/redirect-301-no-inital-fragments.html: Added.
* LayoutTests/http/tests/links/redirect-301-with-fragments-expected.txt: Added.
* LayoutTests/http/tests/links/redirect-301-with-fragments.html: Added.
* LayoutTests/http/tests/links/resources/redirect-helper.pl: Added.
* LayoutTests/http/tests/links/resources/redirect-target.html: Added.
* Source/WebCore/loader/cache/CachedResource.cpp:
(WebCore::CachedResource::redirectReceived):
* Source/WebCore/loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::determineRevalidationPolicy const):
* Source/WebCore/loader/cache/CachedResourceRequest.h:
(WebCore::CachedResourceRequest::hasFragmentIdentifier const):
* Source/WebKit/NetworkProcess/cache/NetworkCache.cpp:
(WebKit::NetworkCache::makeUseDecision):
(WebKit::NetworkCache::makeStoreDecision):
* Source/WebKit/NetworkProcess/cache/NetworkCache.h:

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




More information about the webkit-changes mailing list