54d82ed4
by Rémi Bernon at 2024-12-16T21:16:58+01:00
winex11: Sync gl drawable outside of the win_data mutex.
Some thread might be destroying a window, calling destroy_client_window
from release_gl_drawable, holding the GL context mutex and trying to
enter the win_data mutex.
At the same time, another thread might be moving its window, calling
sync_gl_drawable from X11DRV_WindowPosChanged, holding the win_data
mutex and trying to enter the GL context mutex.
The deadlock was present before already, although less frequently
triggered as sync_gl_drawable was done conditionally if the client
window has been moved.
This triggers now more frequently in the dxgi:dxgi tests.