Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: e22a34489f206258a25aa2838b9c82123afa2d43
https://github.com/WebKit/WebKit/commit/e22a34489f206258a25aa2838b9c82123afa2d43
Author: Anthony Tarbinian <[email protected]>
Date: 2026-10-08 (Thu, 08 Oct 2026)
Changed paths:
M Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp
Log Message:
-----------
REGRESSION(321717@main): [ iOS ]
http/tests/security/cross-origin-iframe-fetch-after-crash.html is a constant
timeout with site isolation (TIMEOUT)
https://bugs.webkit.org/show_bug.cgi?id=326524
rdar://189316955
Reviewed by Charlie Wolfe.
321717@main added a per-process allow-list of WebPageProxyIdentifiers to the
network process. After a network process crash, the UIProcess creates the new
network process's allow-list in getNetworkProcessConnection() using only
WebProcessProxy::mainPages(). Under site isolation, a process hosting only a
cross-origin subframe is not in mainPages(), so its page identifier is never
restored and its subsequent loads are silently dropped.
This patch fixes this by creating the allow-list from
WebProcessProxy::pages() in
NetworkProcessProxy::getNetworkProcessConnection(). pages() includes
remote pages which were skipped by mainPages().
The original loop also set up CORS-disabling pattern, so I split up the
loop into two loops and kept the behavior of the CORS code the same with
mainPages().
Covered by existing test:
http/tests/security/cross-origin-iframe-fetch-after-crash.html
* Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getNetworkProcessConnection):
(WebKit::NetworkProcessProxy::addAllowedWebPageProxyIdentifier):
Canonical link: https://commits.webkit.org/323101@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications