Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 7e6e586f5ec6aa995711ad77d09c02d9ef372262
https://github.com/WebKit/WebKit/commit/7e6e586f5ec6aa995711ad77d09c02d9ef372262
Author: Rupin Mittal <[email protected]>
Date: 2026-06-05 (Fri, 05 Jun 2026)
Changed paths:
M LayoutTests/platform/ios-site-isolation/TestExpectations
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp
Log Message:
-----------
[Site Isolation] 2x resourceLoadStatistics/exemptDomains* tests are failing
https://bugs.webkit.org/show_bug.cgi?id=316314
rdar://178737060
Reviewed by Sihui Liu.
When WebsiteDataStore::setThirdPartyCookieBlockingMode() is called (and it is
in these tests), it sends IPC to the web processes in its m_process map to
notify them of the new mode. But web processes that don't contain a local main
frame (such as web processes that exist only for cross-site iframes) are not
added to the WebsiteDataStore's map. So they aren't notified of the new mode.
So in those web processes,
WebProcess::singleton().thirdPartyCookieBlockingMode()
is wrong. (Checked by WebCookieJar::shouldBlockCookies() in these tests).
We fix this by ensuring that when a RemotePageProxy is added to a web process,
it's added to the WebsiteDataStore's map (currently web processes are only added
when a WebPageProxy is added).
* LayoutTests/platform/ios-site-isolation/TestExpectations:
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::remotePageCount const):
(WebKit::WebProcessProxy::updateRegistrationWithDataStore):
(WebKit::WebProcessProxy::addRemotePageProxy):
(WebKit::WebProcessProxy::removeRemotePageProxy):
* Source/WebKit/UIProcess/WebProcessProxy.h:
* Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::registerProcess):
(WebKit::WebsiteDataStore::unregisterProcess):
Canonical link: https://commits.webkit.org/314659@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications