Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
REGRESSION (iOS 16.4): Chrome crashes in WebBackForwardCache::takeSus…
…pendedPage https://bugs.webkit.org/show_bug.cgi?id=255102 rdar://107723629 Reviewed by Geoffrey Garen. We recently added an AddAllowedFirstPartyForCookies async IPC call inside WebProcessPool::processForNavigation(), right after we decide which process to use. Because the IPC is async, this means that the selected process may crash while we're waiting for a response. If this happens, we now call processForNavigation() again to select a new process instead of trying to proceed with the navigation with the terminated process. Similarly, also make sure that the destination suspendedPage is still valid after receiving the async IPC, in case the back/forward cache got cleared during the IPC (e.g. due to memory pressure). * Source/WebKit/UIProcess/WebProcessPool.cpp: (WebKit::WebProcessPool::processForNavigation): * Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm: Canonical link: https://commits.webkit.org/262709@main
- Loading branch information
Showing
3 changed files
with
92 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters