15 Oct
2025
15 Oct
'25
6:30 a.m.
On Wed Oct 15 06:26:43 2025 +0000, Zhao Yi wrote:
There is a scenario where the function call sequence in the same thread is: window_surface_lock() → lock_surface() → unlock_surface() → window_surface_unlock(). In this situation, window_surface_lock() is called first to acquire a lock. When lock_surface() is subsequently called to acquire the same lock, the initial lock has not yet been released, ultimately resulting in a deadlock. Sure, but what is this scenario exactly? I've worked to remove the surface recursive locking requirement before, and I think we should fix it that way instead.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9177#note_118550