Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 50f865ffbe32f1fc8a092583f719630b62ae7604
https://github.com/WebKit/WebKit/commit/50f865ffbe32f1fc8a092583f719630b62ae7604
Author: Matt Woodrow <[email protected]>
Date: 2023-05-31 (Wed, 31 May 2023)
Changed paths:
M Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp
Log Message:
-----------
RemoteGraphicsContextGLProxy::initializeIPC makes a copy of the
StreamServerConnection::Handle
https://bugs.webkit.org/show_bug.cgi?id=257519
<rdar://109720377>
Reviewed by Kimmo Kinnunen.
The GPUConnectionToWebProcess::CreateGraphicsContextGL object's constructor
doesn't actually move, so we end up making a copy for the IPC message.
The 'serverConnectionHandle' instance is then still alive, and holding on to a
MachSendRight.
waitUntilInitialized can then block (for the 30 second timeout) if the GPUP
crashes, since notification of the crash doesn't happen until all send rights
are destroyed (including the one on the stack).
This change ensures that our copy of the handle is cleared, before trying to
wait on the connection.
* Source/WebKit/WebProcess/GPU/graphics/RemoteGraphicsContextGLProxy.cpp:
(WebKit::RemoteGraphicsContextGLProxy::initializeIPC):
Canonical link: https://commits.webkit.org/264766@main
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes