Module: wine Branch: master Commit: 1e701a6b3798ecfd688ad1ff405dbb62b3d214c6 URL: https://gitlab.winehq.org/wine/wine/-/commit/1e701a6b3798ecfd688ad1ff405dbb6... Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Sat Jun 15 18:36:50 2024 +0200 winewayland: Avoid crashing when the dummy window surface is used. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56840 --- dlls/winewayland.drv/window_surface.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dlls/winewayland.drv/window_surface.c b/dlls/winewayland.drv/window_surface.c index fb3b8750001..888fa74c085 100644 --- a/dlls/winewayland.drv/window_surface.c +++ b/dlls/winewayland.drv/window_surface.c @@ -489,8 +489,12 @@ failed: void wayland_window_surface_update_wayland_surface(struct window_surface *window_surface, struct wayland_surface *wayland_surface) { - struct wayland_window_surface *wws = wayland_window_surface_cast(window_surface); + struct wayland_window_surface *wws; + + /* ignore calls with the dummy surface */ + if (window_surface->funcs != &wayland_window_surface_funcs) return; + wws = wayland_window_surface_cast(window_surface); window_surface_lock(window_surface); TRACE("surface=%p hwnd=%p wayland_surface=%p\n", wws, window_surface->hwnd, wayland_surface);