Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3b231beb6f11e77b502bd58e3b7bbe90c5ff07d1
      
https://github.com/WebKit/WebKit/commit/3b231beb6f11e77b502bd58e3b7bbe90c5ff07d1
  Author: Rupin Mittal <[email protected]>
  Date:   2026-02-26 (Thu, 26 Feb 2026)

  Changed paths:
    M LayoutTests/platform/ios-site-isolation/TestExpectations
    M LayoutTests/platform/mac-site-isolation/TestExpectations
    M Source/WebCore/loader/FrameLoader.cpp

  Log Message:
  -----------
  [Site Isolation] 5 COOP tests in 
iframe-popup-same-origin-to-unsafe-none.https.html are failing
https://bugs.webkit.org/show_bug.cgi?id=308672
rdar://171204208

Reviewed by Sihui Liu.

In these tests, an iframe opens a popup and due to the COOP, there should be no
opener relationship. The tests fail because the opened popup does have an 
opener.

In FrameLoader::loadURL, shouldForceNoOpenerBasedOnCOOP correctly returns true,
and so we set the local variable openerPolicy to NewFrameOpenerPolicy::Suppress.
But we do not change the NavigationAction's NewFrameOpenerPolicy. This continues
to be NewFrameOpenerPolicy::Allow. Because this is set to Allow:

1. NavigationActionData::hasOpener is set to true
2. WebPageProxy::createNewPage sets openerInfo on the new page's configuration
3. mainFrameOpenerIdentifier is be set in WebPageCreationParameters
4. The new Frame is constructed with an opener

We fix this by ensuring that if shouldForceNoOpenerBasedOnCOOP is true, then
NavigationAction's NewFrameOpenerPolicy is set to 
NewFrameOpenerPolicy::Suppress.

* LayoutTests/platform/ios-site-isolation/TestExpectations:
* LayoutTests/platform/mac-site-isolation/TestExpectations:
* Source/WebCore/loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):

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



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

Reply via email to