[webkit-changes] [WebKit/WebKit] 08b021: [Site Isolation] Lock the back/forward list when n...
Charlie Wolfe
noreply at github.com
Thu Dec 19 13:51:51 PST 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 08b02154d9322cabe375ddac86cda5bfd602d958
https://github.com/WebKit/WebKit/commit/08b02154d9322cabe375ddac86cda5bfd602d958
Author: Charlie Wolfe <charliew at apple.com>
Date: 2024-12-19 (Thu, 19 Dec 2024)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
[Site Isolation] Lock the back/forward list when navigating isolated iframes back or forward
https://bugs.webkit.org/show_bug.cgi?id=284967
rdar://141773123
Reviewed by Alex Christensen.
When navigating isolated iframes back or forward to a different site we need to lock the back forward
list so that history state is not committed by the request loaded in the new web process. We were using
`m_pendingChildBackForwardItem` for this, which indicates that a back/forward item will soon have child
state committed by a new web process, but this was not correct because navigating isolated iframes will
not construct history state for their out-of-process parents.
If we are loading an iframe in a new process while moving back or forward we should always lock the
back/forward list.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goToBackForwardItem):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::TEST(SiteIsolation, NavigateIframeCrossOriginBackForward)):
Canonical link: https://commits.webkit.org/288120@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list