Branch: refs/heads/webkitglib/2.54
Home: https://github.com/WebKit/WebKit
Commit: 77affe2d04c57bfcacb8470b3089b74059d02a7a
https://github.com/WebKit/WebKit/commit/77affe2d04c57bfcacb8470b3089b74059d02a7a
Author: Carlos Garcia Campos <[email protected]>
Date: 2026-08-27 (Thu, 27 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
Log Message:
-----------
Cherry-pick 319946@main (0988eec0c5a2).
https://bugs.webkit.org/show_bug.cgi?id=321395
REGRESSION(316854@main): Frame CertificateInfo is empty after process swap
on navigation
https://bugs.webkit.org/show_bug.cgi?id=321395
Reviewed by Alex Christensen.
When continuing a load on new process after a process swap on navigation
response, the provisional certificate used for the new frame proxy is
copied from the previous committed load, but the new certificate was
actually received from the network process in the previous provisional
frame.
If there's a previous provisional frame having a provisional certificate
received from the network process it should be used, falling back to the
previous commited frame otherwise. This patch handles both cases from
continueNavigationInNewProcess(), passing the certitifate info to the
new ProvisionalPageProxy construtor.
* Source/WebKit/UIProcess/ProvisionalPageProxy.cpp:
(WebKit::ProvisionalPageProxy::ProvisionalPageProxy):
* Source/WebKit/UIProcess/ProvisionalPageProxy.h:
* Source/WebKit/UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::provisionalCertificateInfoFromNetworkProcess const):
(WebKit::WebFrameProxy::commitCertificateInfo):
(WebKit::WebFrameProxy::setCertificateInfoForProcessSwapOnNavigationResponse):
(WebKit::WebFrameProxy::certificateInfoFromNetworkProcess const): Deleted.
(WebKit::WebFrameProxy::copyCertificateInfoForProcessSwapOnNavigationResponse):
Deleted.
* Source/WebKit/UIProcess/WebFrameProxy.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::continueNavigationInNewProcess):
Canonical link: https://commits.webkit.org/319946@main
Canonical link: https://commits.webkit.org/317695.153@webkitglib/2.54
Commit: 81c3abd2eb158e4d96872ccfdc790fed4e96e0e7
https://github.com/WebKit/WebKit/commit/81c3abd2eb158e4d96872ccfdc790fed4e96e0e7
Author: Carlos Garcia Campos <[email protected]>
Date: 2026-08-27 (Thu, 27 Aug 2026)
Changed paths:
M Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp
M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp
M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.h
Log Message:
-----------
Cherry-pick 319948@main (0c2c3da31e37).
https://bugs.webkit.org/show_bug.cgi?id=322485
REGRESSION(316854@main): CertificateInfo is not sent to the UI process for
service worker fetch loads
https://bugs.webkit.org/show_bug.cgi?id=322485
Reviewed by Alex Christensen.
ServiceWorkerFetchTask::processResponse() passes the response to the
loader by calling sendDidReceiveResponseWithPotentialProcessSwap(), so
didReceiveMainResourceResponse(), that sends the certificate info the UI
process, is not called.
This patch adds
WebSWServerConnection::fetchTaskReceivedMainResourceResponse()
that is called from ServiceWorkerFetchTask::processResponse() for main frame
loads to send the ReceivedMainResourceResponseWithCertificateInfo to the UI
process.
* Source/WebKit/NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
(WebKit::ServiceWorkerFetchTask::processResponse):
* Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
(WebKit::WebSWServerConnection::fetchTaskReceivedMainResourceResponse):
(WebKit::WebSWServerConnection::resolveUnregistrationJobInClient):
* Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.h:
Canonical link: https://commits.webkit.org/319948@main
Canonical link: https://commits.webkit.org/317695.154@webkitglib/2.54
Compare: https://github.com/WebKit/WebKit/compare/00d686a0b796...81c3abd2eb15
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications