Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 84738405475ef105f150ad3d56be0e0c268902a2
      
https://github.com/WebKit/WebKit/commit/84738405475ef105f150ad3d56be0e0c268902a2
  Author: Anthony Tarbinian <[email protected]>
  Date:   2025-11-19 (Wed, 19 Nov 2025)

  Changed paths:
    A 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-main-page-expected.txt
    A 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-main-page.html
    A 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe-expected.txt
    A 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe.html
    A 
LayoutTests/http/tests/site-isolation/resources/frame-child-navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe.html
    M Source/WebKit/Shared/ProvisionalFrameCreationParameters.h
    M Source/WebKit/Shared/ProvisionalFrameCreationParameters.serialization.in
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/ProvisionalFrameProxy.cpp
    M Source/WebKit/UIProcess/ProvisionalFrameProxy.h
    M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
    M Source/WebKit/UIProcess/WebFrameProxy.cpp
    M Source/WebKit/UIProcess/WebFrameProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebProcessPool.cpp
    M Source/WebKit/WebProcess/WebPage/WebFrame.cpp
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm

  Log Message:
  -----------
  [Site Isolation] Navigation to about:blank inherits navigator's origin
https://bugs.webkit.org/show_bug.cgi?id=302102
rdar://160706600

Reviewed by Alex Christensen.

If an iframe is navigated to about:blank, it should inherit the origin
of whoever initiated the navigation.

With site isolation, this means that the about:blank iframe needs to
be in the same process as the navigator. If the iframe was previously
in a different origin than the navigator, this might require a process
swap.

This patch also attempts to perform these loads to about:blank "immediately"
by committing a provisional frame right after creating one since about:blank
iframes don't have any network resources to load.

Tests: 
http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-main-page.html
       
http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe.html

* 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-main-page-expected.txt:
 Added.
* 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-main-page.html:
 Added.
* 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe-expected.txt:
 Added.
* 
LayoutTests/http/tests/site-isolation/navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe.html:
 Added.
* 
LayoutTests/http/tests/site-isolation/resources/frame-child-navigate-to-about-blank-from-cross-origin-initiated-by-parent-iframe.html:
 Added.
* Source/WebKit/Shared/ProvisionalFrameCreationParameters.h:
* Source/WebKit/Shared/ProvisionalFrameCreationParameters.serialization.in:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
* Source/WebKit/UIProcess/ProvisionalFrameProxy.cpp:
(WebKit::ProvisionalFrameProxy::ProvisionalFrameProxy):
* Source/WebKit/UIProcess/ProvisionalFrameProxy.h:
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::initializeWebPage):
* Source/WebKit/UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::prepareForProvisionalLoadInProcess):
(WebKit::WebFrameProxy::provisionalFrameCreationParameters):
* Source/WebKit/UIProcess/WebFrameProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::continueNavigationInNewProcess):
* Source/WebKit/UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::processForNavigationInternal):
* Source/WebKit/WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::createProvisionalFrame):
* Tools/TestWebKitAPI/Tests/WebKitCocoa/SiteIsolation.mm:
(TestWebKitAPI::(SiteIsolation, 
MainPageNavigatesCrossOriginIframeToAboutBlank)):
(TestWebKitAPI::(SiteIsolation, 
ChildIframeNavigatesCrossOriginGrandchildIframeToAboutBlank)):

Canonical link: https://commits.webkit.org/303299@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to