Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c5709a29db791789619cafaf51afa16e59175735
https://github.com/WebKit/WebKit/commit/c5709a29db791789619cafaf51afa16e59175735
Author: Charlie Wolfe <[email protected]>
Date: 2024-06-04 (Tue, 04 Jun 2024)
Changed paths:
M Source/WebKit/Shared/SessionState.cpp
M Source/WebKit/Shared/SessionState.h
M Source/WebKit/Shared/WebBackForwardListItem.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
[Site Isolation] Begin to fix back forward navigations going to cross-origin
iframes
https://bugs.webkit.org/show_bug.cgi?id=275083
rdar://129192542
Reviewed by Alex Christensen.
If we are navigating to a back forward item that corresponds to an
out-of-process iframe, and the process
that was hosting the frame no longer exists, we should navigate the process
that is now hosting the frame.
* Source/WebKit/Shared/SessionState.cpp:
(WebKit::FrameState::stateForFrameID const):
* Source/WebKit/Shared/SessionState.h:
Add `stateForFrameID` that is used to get the URL for the frame that navigated.
* Source/WebKit/Shared/WebBackForwardListItem.h:
(WebKit::WebBackForwardListItem::setFrameID):
(WebKit::WebBackForwardListItem::frameID const):
Add a `m_frameID` member variable that indicates the frame that was navigated.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::goToBackForwardItem):
(WebKit::WebPageProxy::continueNavigationInNewProcess):
If a frame has a pending back forward item here, we are moving in the back
forward list, so the list
should not be updated.
(WebKit::WebPageProxy::backForwardAddItemShared):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::TEST(SiteIsolation, NavigateIframeCrossOriginBackForward)):
Canonical link: https://commits.webkit.org/279690@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes