Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: 2d924a32402016dfc54ffad87c0fc1a35b62f3e7 https://github.com/WebKit/WebKit/commit/2d924a32402016dfc54ffad87c0fc1a35b62f3e7 Author: Sihui Liu <sihui_...@apple.com> Date: 2024-06-21 (Fri, 21 Jun 2024)
Changed paths: M LayoutTests/platform/ios/TestExpectations M Source/WebKit/UIProcess/WebPageProxy.cpp Log Message: ----------- REGRESSION (278473@main): [ iOS ] http/tests/site-isolation/window-open-with-name-cross-site.html is a consistent timeout https://bugs.webkit.org/show_bug.cgi?id=273984 rdar://127848665 Reviewed by Alex Christensen. 278473@main added a new test that performs top-level navigation from domain 127.0.0.1 to localhost. After the test runs, the web page is hosted in a FrameProcess with site `http://localhost`, and BrowsingContextGroup of the WebPageProxy only has one FrameProcess for `http://localhost`. When WebKitTestRunner loads the next test URL of domain 127.0.0.1 in the web page, a new FrameProcess for site `http://127.0.0.1` should be created, added to BrowsingContextGroup, and used for the main frame of the page. Otherwise, UI process will not use the same process for other frames loading `http://127.0.0.1` (since it cannot find it in BrowsingContextGroup), and it may create a new web process. The timeout is directly caused by opener of frame with `http://127.0.0.1` not being set, which is supposed to be set after provisional frame is committed. In this case, provisional frame is not created becasuse takeRemotePageInProcessForProvisionalPage does not find remote page in the new web process (see `ProvisionalPageProxy::initializeWebPage`), and the new web prcess should not be created. To fix this, create new FrameProcess when frame load is committed and existing frame process has different site from load site. * LayoutTests/platform/ios/TestExpectations: * Source/WebKit/UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didCommitLoadForFrame): Canonical link: https://commits.webkit.org/280263@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes