[Webkit-unassigned] [Bug 282506] New: The page is resumed from the point at which fetch is aborted

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sun Nov 3 00:22:24 PDT 2024


https://bugs.webkit.org/show_bug.cgi?id=282506

            Bug ID: 282506
           Summary: The page is resumed from the point at which fetch is
                    aborted
           Product: WebKit
           Version: Safari Technology Preview
          Hardware: All
                OS: All
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Page Loading
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: pp.mizdra at gmail.com
                CC: beidson at apple.com

Created attachment 473117

  --> https://bugs.webkit.org/attachment.cgi?id=473117&action=review

Recording of bug reproduction

## Overview
The page is resumed from the point at which fetch was aborted when a page that transited during fetch is restored from bfcache.

## Steps to reproduce
1. `git clone https://github.com/mizdra/bfcache-and-page-transitions-during-fetching-test`
2. `npx serve .`
3. Open http://localhost:3000/1-basic on Safari
4. Click "Fetch resource and transit to another page" button
5. Click browser back button

## Actual Results
fetch is aborted and it throws a TypeError when the page is transited. http://localhost:3000/1-basic is restored from bfcache. The page is resumed from the point at which the TypeError was thrown.

## Expected Results
I think there are two expected behaviors.

The first is to abort fetch on page transitions and not save the page as a bfcache. This avoids restoring the page from the point where the TypeError was thrown.

Second, do not abort fetch on page transitions, but save the page as a bfcache, so that fetch continues in the background. This avoids restoring the page from the point at which the TypeError was thrown. Moreover, the page is restored from the bfcache. This is the approach used by Chrome.

## Build Date & Hardware
Release 206 (Safari 18.0, WebKit 20621.1.3.21.1) on macOS 15.1

## Additional Information
Many users do not expect the page to resume from the point at which fetch was aborted. Therefore, this behavior can break many pages. For more information, see the following.

- https://github.com/mizdra/bfcache-and-page-transitions-during-fetching-test?tab=readme-ov-file#additional-information

This issue has also been reported for Firefox.

- https://bugzilla.mozilla.org/show_bug.cgi?id=1928385

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20241103/afae90ad/attachment.htm>


More information about the webkit-unassigned mailing list