On Sun Aug 18 11:58:27 2024 +0000, Rémi Bernon wrote:
I don't really like that weak ref, I think you should be able to make it work without it. Just use `NtUserGetAncestor( hwnd, GA_ROOT )` to get the toplevel window and lock its wayland_surface.
Unfortunately this would bring us again to deadlock territory, since it reintroduces the `[surface.mutex, win_data_mutex]` locking sequence in `wayland_surface_reconfigure_subsurface()` (see https://gitlab.winehq.org/wine/wine/-/merge_requests/6107#note_76873).