Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4895f35302d070075756b77cc3e24ce2644cd53b
https://github.com/WebKit/WebKit/commit/4895f35302d070075756b77cc3e24ce2644cd53b
Author: Ronan Turner <[email protected]>
Date: 2026-02-03 (Tue, 03 Feb 2026)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Tools/TestWebKitAPI/Tests/WebKitCocoa/EnhancedSecurityPolicies.mm
Log Message:
-----------
Fix Site Isolation compatibility with Enhanced Security
https://bugs.webkit.org/show_bug.cgi?id=305328
rdar://164474301
Reviewed by Alex Christensen and Sihui Liu.
With the introduction of Enhanced Security, it became possible to hit a
case where we wanted to swap Enhanced Security states for a site that
already existed within the BrowsingContextGroup. This caused us to hit
an assert where we were trying to add a process for a site that already
existed in the process map.
We should not do this - instead, if we already have an existing process
for a site in the current BrowsingContextGroup, we should remain with
whatever the Enhanced Security state is for that process.
This change allows re-enabling various tests in EnhancedSecurityPolicies
with site isolation enabled, which previously would fail.
An additional test has been added that confirms the expected behaviour
with a WKWebView navigation to the same site as the current main frame,
ensuring this does not change Enhanced Security state.
Test: Tools/TestWebKitAPI/Tests/WebKitCocoa/EnhancedSecurityPolicies.mm
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedNavigationActionPolicyDecision):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/EnhancedSecurityPolicies.mm:
(testAlertWithEnhancedSecurity):
(runMultiHopThenBack):
(runMultiHopThenBackJavascript):
(runWebViewSameSiteMainFrameNavigation):
(runHttpRedirectsHttpsWithExplicitNavigationToMeaningfulSite):
Canonical link: https://commits.webkit.org/306717@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications