winevulkan: Implement vkEnumerateInstanceLayerProperties() in ICD.

Other Vulkan ICDs implement this function.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Józef Kucia 2018-07-13 10:55:40 +02:00 committed by Alexandre Julliard
parent 036376e6a5
commit b75a117822
3 changed files with 15 additions and 4 deletions

View File

@ -2258,10 +2258,6 @@ class VkGenerator(object):
if not func.is_core_func():
continue
# Not an ICD level function.
if func.name == "vkEnumerateInstanceLayerProperties":
continue
# We support all Core functions except for VK_KHR_display* APIs.
# Create stubs for unsupported Core functions.
if func.is_required():

View File

@ -828,6 +828,19 @@ VkResult WINAPI wine_vkEnumerateInstanceExtensionProperties(const char *layer_na
return *count < num_properties ? VK_INCOMPLETE : VK_SUCCESS;
}
VkResult WINAPI wine_vkEnumerateInstanceLayerProperties(uint32_t *count, VkLayerProperties *properties)
{
TRACE("%p, %p\n", count, properties);
if (!properties)
{
*count = 0;
return VK_SUCCESS;
}
return VK_ERROR_LAYER_NOT_PRESENT;
}
VkResult WINAPI wine_vkEnumerateInstanceVersion(uint32_t *version)
{
VkResult res;
@ -1096,6 +1109,7 @@ static const struct vulkan_func vk_global_dispatch_table[] =
{
{"vkCreateInstance", &wine_vkCreateInstance},
{"vkEnumerateInstanceExtensionProperties", &wine_vkEnumerateInstanceExtensionProperties},
{"vkEnumerateInstanceLayerProperties", &wine_vkEnumerateInstanceLayerProperties},
{"vkEnumerateInstanceVersion", &wine_vkEnumerateInstanceVersion},
{"vkGetInstanceProcAddr", &wine_vkGetInstanceProcAddr},
};

View File

@ -149,6 +149,7 @@
@ stdcall wine_vkEnumerateDeviceExtensionProperties(ptr str ptr ptr)
@ stdcall wine_vkEnumerateDeviceLayerProperties(ptr ptr ptr)
@ stdcall wine_vkEnumerateInstanceExtensionProperties(str ptr ptr)
@ stdcall wine_vkEnumerateInstanceLayerProperties(ptr ptr)
@ stdcall wine_vkEnumerateInstanceVersion(ptr)
@ stdcall wine_vkEnumeratePhysicalDeviceGroups(ptr ptr ptr)
@ stdcall wine_vkEnumeratePhysicalDevices(ptr ptr ptr)