Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 65f1f3b12dbc793c17938873f57f7483a6c30a46
      
https://github.com/WebKit/WebKit/commit/65f1f3b12dbc793c17938873f57f7483a6c30a46
  Author: Ryosuke Niwa <[email protected]>
  Date:   2026-04-27 (Mon, 27 Apr 2026)

  Changed paths:
    M 
LayoutTests/platform/wk2/webarchive/loading/javascript-url-iframe-crash-expected.txt
    M LayoutTests/platform/wk2/webarchive/loading/object-expected.txt
    M 
LayoutTests/platform/wk2/webarchive/loading/test-loading-top-archive-expected.txt
    M 
LayoutTests/platform/wk2/webarchive/loading/video-in-webarchive-expected.txt
    M Source/WebKit/UIProcess/ProvisionalPageProxy.cpp

  Log Message:
  -----------
  [Site Isolation] 
http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-UpgradeMixedContent.html
 fails
https://bugs.webkit.org/show_bug.cgi?id=313385

Reviewed by Megan Gardner.

During a cross-origin process swap, ProvisionalPageProxy intercepts all IPC 
from the new process.
In dispatchDidCommitLoad(), the InjectedBundle's callback fires before the 
DidCommitLoadForFrame
IPC is sent. When an InjectedBundle sends a HandleMessage IPC (e.g. for 
TextOutput in WKTR) in
this moment, ProvisionalPageProxy silently drops the message instead of 
forwarding it to
WebPageProxy, which hands it to the API client. Only after 
DidCommitLoadForFrame is processed
and the process swap completes do subsequent messages (like 
didFinishDocumentLoadForFrame) reach
the WebPageProxy normally.

Fixed the test by forwarding HandleMessage from the ProvisionalPageProxy to the 
WebPageProxy,
matching the pattern already used for AddMessageToConsoleForTesting and other 
forwarded messages
so that TextOutput IPC from WebKitTestRunner's injected bundle won't be dropped 
on floor.

Test: 
http/tests/security/mixedContent/redirect-https-to-http-image-secure-cookies-UpgradeMixedContent.html

* 
LayoutTests/platform/wk2/webarchive/loading/javascript-url-iframe-crash-expected.txt:
* LayoutTests/platform/wk2/webarchive/loading/object-expected.txt:
* 
LayoutTests/platform/wk2/webarchive/loading/test-loading-top-archive-expected.txt:
* LayoutTests/platform/wk2/webarchive/loading/video-in-webarchive-expected.txt:
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::didReceiveMessage):

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



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

Reply via email to