Alexandros Frantzis (@afrantzis) commented about dlls/winex11.drv/init.c:
+ +static const struct client_surface_funcs x11drv_client_surface_funcs = +{ + .destroy = x11drv_client_surface_destroy, + .detach = x11drv_client_surface_detach, + .update = x11drv_client_surface_update, + .present = X11DRV_client_surface_present, +}; + +Window x11drv_client_surface_create( HWND hwnd, struct client_surface **client ) +{ + struct x11drv_client_surface *surface; + + if (!(surface = client_surface_create( sizeof(*surface), &x11drv_client_surface_funcs, hwnd ))) + { + ERR("Failed to allocate vulkan surface for hwnd=%p\n", hwnd); Nit: By the end of the series the client surface is also used for OpenGL, so this error could be confusing in the logs.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/8522#note_109286