From: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/win32u/dce.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/dlls/win32u/dce.c b/dlls/win32u/dce.c index d9c5f161385..5ec07b207d8 100644 --- a/dlls/win32u/dce.c +++ b/dlls/win32u/dce.c @@ -865,8 +865,12 @@ static void update_visible_region( struct dce *dce ) win = get_win_ptr( top_win ); if (win && win != WND_DESKTOP && win != WND_OTHER_PROCESS) { - surface = win->surface; - if (surface) window_surface_add_ref( surface ); + /* don't use a surface to paint the client area of Vulkan windows */ + if (list_empty( &win->vulkan_surfaces ) || (flags & DCX_WINDOW)) + { + surface = win->surface; + if (surface) window_surface_add_ref( surface ); + } release_win_ptr( win ); } } -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/7045