Paul Gofman (@gofman) commented about dlls/winex11.drv/vulkan.c:
return pvkGetSwapchainImagesKHR(device, swapchain, count, images);
}
+static VkResult X11DRV_vkAcquireNextImageKHR( VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout,
VkSemaphore semaphore, VkFence fence, uint32_t *image_index )
+{
- struct wine_vk_surface *surface;
- struct x11drv_win_data *data;
- if (XFindContext( gdi_display, (XID)swapchain, vulkan_swapchain_context, (char **)&surface ))
return VK_ERROR_SURFACE_LOST_KHR;
- if ((data = get_win_data( surface->hwnd )))
- {
attach_client_window( data, surface->window );
Here we also probably need XSync(gdi_display...) unless doing that inside the function.