[webkit-changes] [WebKit/WebKit] bc0703: Fix site isolation frame process management when l...
Alex Christensen
noreply at github.com
Fri Jan 3 11:35:40 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: bc070381592b6406e7dff01537c07f5a7cb27a2f
https://github.com/WebKit/WebKit/commit/bc070381592b6406e7dff01537c07f5a7cb27a2f
Author: Alex Christensen <achristensen at apple.com>
Date: 2025-01-03 (Fri, 03 Jan 2025)
Changed paths:
M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm
Log Message:
-----------
Fix site isolation frame process management when loading main frame content with cross-origin-opener-policy
https://bugs.webkit.org/show_bug.cgi?id=285344
rdar://142317920
Reviewed by Sihui Liu and Pascoe.
Fixing this case required 3 changes. First, WebPageProxy::triggerBrowsingContextGroupSwitchForNavigation
needs to actually switch BrowsingContextGroups. Second, WebPageProxy::sharedPreferencesForWebProcess,
which is called with every incoming IPC to the WebPageProxy, should not call
BrowsingContextGroup::ensureProcessForConnection when we can get the WebProcessProxy using
WebProcessProxy::processForConnection instead without messing with the BrowsingContextGroup.
Third, the ProvisionalPageProxy constructor has a call to didStartProvisionalLoad that is needed for
PSON but not site isolation.
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::ProvisionalPageProxy):
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::sharedPreferencesForWebProcess const):
(WebKit::WebPageProxy::triggerBrowsingContextGroupSwitchForNavigation):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::TEST(SiteIsolation, CrossOriginOpenerPolicyMainFrame)):
Canonical link: https://commits.webkit.org/288412@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