Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 08b02154d9322cabe375ddac86cda5bfd602d958
      
https://github.com/WebKit/WebKit/commit/08b02154d9322cabe375ddac86cda5bfd602d958
  Author: Charlie Wolfe <[email protected]>
  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
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to