Branch: refs/heads/webkitglib/2.54
  Home:   https://github.com/WebKit/WebKit
  Commit: d81a5452943f1083f1f939685afb47a8dc7957c2
      
https://github.com/WebKit/WebKit/commit/d81a5452943f1083f1f939685afb47a8dc7957c2
  Author: Alex Christensen <[email protected]>
  Date:   2026-08-18 (Tue, 18 Aug 2026)

  Changed paths:
    M Source/WebKit/UIProcess/Network/NetworkProcessProxy.h
    M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
    M Source/WebKit/UIProcess/WebFrameProxy.cpp
    M Source/WebKit/UIProcess/WebFrameProxy.h
    M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebViewServerTrustKVC.mm

  Log Message:
  -----------
  Cherry-pick 318495@main (702c6b7899c5). 
https://bugs.webkit.org/show_bug.cgi?id=320765

    Fix 
imported/w3c/web-platform-tests/html/cross-origin-opener-policy/resource-popup.https.html
 to have correct certificate info
    https://bugs.webkit.org/show_bug.cgi?id=320765
    rdar://183768315

    Reviewed by Chris Dumez.

    317375@main had a few issues.

    It introduced a bool to prevent waitForAndDispatchImmediately re-entry,
    but at the cost of sometimes not having the correct certificate info.
    The real bug was that after a COOP-initiated process swap, we weren't
    taking the certificate info received by the old main frame and giving
    it to the new main frame.

    I added a unit test that times out waiting for a server trust that
    never appears before this fix, showing clearly the functional regression
    from 316854@main that this PR fixes and 317375@main did not.

    * Source/WebKit/UIProcess/Network/NetworkProcessProxy.h:
    * Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
    (WebKit::ProvisionalPageProxy::ProvisionalPageProxy):
    * Source/WebKit/UIProcess/WebFrameProxy.cpp:
    (WebKit::WebFrameProxy::certificateInfoFromNetworkProcess const):
    (WebKit::WebFrameProxy::commitCertificateInfo):
    
(WebKit::WebFrameProxy::copyCertificateInfoForProcessSwapOnNavigationResponse):
    (WebKit::WebFrameProxy::waitForCertificateInfoFromNetworkProcess):
    * Source/WebKit/UIProcess/WebFrameProxy.h:
    * Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebViewServerTrustKVC.mm:
    (TEST(WKWebView, ServerTrustKVCWithCOOP)):

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

Canonical link: https://commits.webkit.org/317695.109@webkitglib/2.54


  Commit: 3d45c128e30da7c2c74acfad5a3995d8e5c35c19
      
https://github.com/WebKit/WebKit/commit/3d45c128e30da7c2c74acfad5a3995d8e5c35c19
  Author: Alex Christensen <[email protected]>
  Date:   2026-08-18 (Tue, 18 Aug 2026)

  Changed paths:
    M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp
    M Source/WebKit/UIProcess/ProvisionalPageProxy.h
    M Source/WebKit/UIProcess/WebFrameProxy.cpp
    M Source/WebKit/UIProcess/WebFrameProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/UIProcess/WebPageProxy.messages.in
    M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp
    M Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebViewServerTrustKVC.mm

  Log Message:
  -----------
  Cherry-pick 318982@main (c76d70bab55f). 
https://bugs.webkit.org/show_bug.cgi?id=321456

    Send bool indicating presence of CertificateInfo from web process
    https://bugs.webkit.org/show_bug.cgi?id=321456
    rdar://184545561

    Reviewed by Chris Dumez.

    In 316854@main I stopped sending CertificateInfo from the web process to 
the UI process.
    We can't trust the contents of the CertificateInfo from a 
possibly-compromised web process.
    But in 318495@main I found that there are some circumstances where we need 
input from
    the web process about whether or not to get the CertificateInfo from the 
network process,
    such as using WKWebView.loadHTMLString with the same URL as we've already 
loaded.
    This sends a bool instead of a CertificateInfo indicating whether we should 
get the
    CertificateInfo from the network process.

    Test: Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebViewServerTrustKVC.mm

    * Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
    (WebKit::ProvisionalPageProxy::didCommitLoadForFrame):
    * Source/WebKit/UIProcess/ProvisionalPageProxy.h:
    * Source/WebKit/UIProcess/WebFrameProxy.cpp:
    (WebKit::WebFrameProxy::commitProvisionalFrame):
    (WebKit::WebFrameProxy::commitCertificateInfo):
    * Source/WebKit/UIProcess/WebFrameProxy.h:
    * Source/WebKit/UIProcess/WebPageProxy.cpp:
    (WebKit::WebPageProxy::commitProvisionalPage):
    (WebKit::WebPageProxy::didCommitLoadForFrame):
    * Source/WebKit/UIProcess/WebPageProxy.h:
    * Source/WebKit/UIProcess/WebPageProxy.messages.in:
    * Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp:
    (WebKit::WebLocalFrameLoaderClient::dispatchDidCommitLoad):
    * Tools/TestWebKitAPI/Tests/WebKit/WKWebView/WKWebViewServerTrustKVC.mm:
    (TEST(WKWebView, ServerTrustKVCWithCOOP)):

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

Canonical link: https://commits.webkit.org/317695.110@webkitglib/2.54


Compare: https://github.com/WebKit/WebKit/compare/e7076c2e5ab2...3d45c128e30d

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

Reply via email to