From c83f86bef51918b69ad3c0e23974356b48aa0e9f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Sat, 25 Nov 2023 22:33:36 +0100 Subject: [PATCH] winevulkan: Implement vkGetPhysicalDeviceSurfaceCapabilities2KHR fallback. --- dlls/winevulkan/vulkan.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dlls/winevulkan/vulkan.c b/dlls/winevulkan/vulkan.c index 5f5f81dcd0b..58e4ad090fc 100644 --- a/dlls/winevulkan/vulkan.c +++ b/dlls/winevulkan/vulkan.c @@ -1881,6 +1881,14 @@ VkResult wine_vkGetPhysicalDeviceSurfaceCapabilities2KHR(VkPhysicalDevice device struct wine_instance *instance = physical_device->instance; VkResult res; + if (!instance->funcs.p_vkGetPhysicalDeviceSurfaceCapabilities2KHR) + { + /* Until the loader version exporting this function is common, emulate it using the older non-2 version. */ + if (surface_info->pNext || capabilities->pNext) FIXME("Emulating vkGetPhysicalDeviceSurfaceCapabilities2KHR, ignoring pNext.\n"); + return wine_vkGetPhysicalDeviceSurfaceCapabilitiesKHR(device_handle, surface_info->surface, + &capabilities->surfaceCapabilities); + } + surface_info_host.surface = surface->driver_surface; if (!NtUserIsWindow(surface->hwnd)) return VK_ERROR_SURFACE_LOST_KHR;