[webkit-changes] [WebKit/WebKit] b82e90: Early return instead of terminating web process wh...
Alex Christensen
noreply at github.com
Tue Jan 14 13:17:17 PST 2025
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: b82e90eb3b25d17d3db135873805b8afe7c6712e
https://github.com/WebKit/WebKit/commit/b82e90eb3b25d17d3db135873805b8afe7c6712e
Author: Alex Christensen <achristensen at apple.com>
Date: 2025-01-14 (Tue, 14 Jan 2025)
Changed paths:
M Source/WebKit/UIProcess/WebPageProxy.cpp
Log Message:
-----------
Early return instead of terminating web process when navigating destroyed frames
https://bugs.webkit.org/show_bug.cgi?id=285925
rdar://142902541
Reviewed by Pascoe.
This is similar to 287896 at main but also fixing the MESSAGE_CHECK_COMPLETION calls that check for a frame's existence.
There is a race condition introduced with site isolation that the UI process can destroy a WebFrameProxy and
notify each process that the frame has been destroyed, but before a process receives that message it sends
the UI process a message indicating that the frame is navigating. When this happens, it is correct to do
nothing, or to complete the request to indicate that we should do nothing.
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationActionAsyncShared):
(WebKit::WebPageProxy::decidePolicyForNavigationActionSyncShared):
(WebKit::WebPageProxy::decidePolicyForResponseShared):
Canonical link: https://commits.webkit.org/288887@main
To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications
More information about the webkit-changes
mailing list