[webkit-changes] [WebKit/WebKit] b2ed5a: REGRESSION (269598 at main?): [ macOS Debug ] ASSERTI...
Sihui
noreply at github.com
Fri Dec 1 09:25:59 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b2ed5aecee27ad7088dc72a0b871f56f61ac456c
https://github.com/WebKit/WebKit/commit/b2ed5aecee27ad7088dc72a0b871f56f61ac456c
Author: Sihui Liu <sihui_liu at apple.com>
Date: 2023-12-01 (Fri, 01 Dec 2023)
Changed paths:
M Source/WebKit/Shared/Cocoa/XPCEndpointClient.mm
M Source/WebKit/UIProcess/WebProcessProxy.cpp
M Source/WebKit/UIProcess/WebProcessProxy.h
Log Message:
-----------
REGRESSION (269598 at main?): [ macOS Debug ] ASSERTION FAILED: m_networkProcessToKeepAliveUntilDataStoreIsCreated == networkProcess.ptr() in TestWebKitAPI.WKWebsiteDataStoreConfiguration.TotalQuotaRatio result of constant crash
https://bugs.webkit.org/show_bug.cgi?id=265489
rdar://118904784
Reviewed by Per Arne Vollan and Chris Dumez.
The assertion fails because m_networkProcessToKeepAliveUntilDataStoreIsCreated still points to old default network
process after it exits. The reason why WebProcessProxy has m_networkProcessToKeepAliveUntilDataStoreIsCreated is that
WebProcessProxy needs to launch network process and hold it alive for sending LaunchServicesDatabase to web process,
when there is no WebsiteDataStore (i.e. the web process is prewarmed). This patch removes
m_networkProcessToKeepAliveUntilDataStoreIsCreated from WebProcessProxy and delays the LaunchServicesDatabase sending
to when WebProcessProxy is assigned a WebsiteDataStore. In that case, WebProcessProxy could use the network process of
the WebsiteDataStore.
This patch also has a fix to clear m_connection of XPCEndpointClient when remote process is terminated, so web process
can accept new connection from the relaunched network process.
* Source/WebKit/Shared/Cocoa/XPCEndpointClient.mm:
(WebKit::XPCEndpointClient::setEndpoint):
* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::setWebsiteDataStore):
(WebKit::WebProcessProxy::didFinishLaunching):
* Source/WebKit/UIProcess/WebProcessProxy.h:
Canonical link: https://commits.webkit.org/271385@main
More information about the webkit-changes
mailing list