Commit b75a1178 authored by Józef Kucia's avatar Józef Kucia Committed by Alexandre Julliard

winevulkan: Implement vkEnumerateInstanceLayerProperties() in ICD.

Other Vulkan ICDs implement this function. Signed-off-by: 's avatarJózef Kucia <jkucia@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 036376e6
...@@ -2258,10 +2258,6 @@ class VkGenerator(object): ...@@ -2258,10 +2258,6 @@ class VkGenerator(object):
if not func.is_core_func(): if not func.is_core_func():
continue continue
# Not an ICD level function.
if func.name == "vkEnumerateInstanceLayerProperties":
continue
# We support all Core functions except for VK_KHR_display* APIs. # We support all Core functions except for VK_KHR_display* APIs.
# Create stubs for unsupported Core functions. # Create stubs for unsupported Core functions.
if func.is_required(): if func.is_required():
......
...@@ -828,6 +828,19 @@ VkResult WINAPI wine_vkEnumerateInstanceExtensionProperties(const char *layer_na ...@@ -828,6 +828,19 @@ VkResult WINAPI wine_vkEnumerateInstanceExtensionProperties(const char *layer_na
return *count < num_properties ? VK_INCOMPLETE : VK_SUCCESS; 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 WINAPI wine_vkEnumerateInstanceVersion(uint32_t *version)
{ {
VkResult res; VkResult res;
...@@ -1096,6 +1109,7 @@ static const struct vulkan_func vk_global_dispatch_table[] = ...@@ -1096,6 +1109,7 @@ static const struct vulkan_func vk_global_dispatch_table[] =
{ {
{"vkCreateInstance", &wine_vkCreateInstance}, {"vkCreateInstance", &wine_vkCreateInstance},
{"vkEnumerateInstanceExtensionProperties", &wine_vkEnumerateInstanceExtensionProperties}, {"vkEnumerateInstanceExtensionProperties", &wine_vkEnumerateInstanceExtensionProperties},
{"vkEnumerateInstanceLayerProperties", &wine_vkEnumerateInstanceLayerProperties},
{"vkEnumerateInstanceVersion", &wine_vkEnumerateInstanceVersion}, {"vkEnumerateInstanceVersion", &wine_vkEnumerateInstanceVersion},
{"vkGetInstanceProcAddr", &wine_vkGetInstanceProcAddr}, {"vkGetInstanceProcAddr", &wine_vkGetInstanceProcAddr},
}; };
......
...@@ -149,6 +149,7 @@ ...@@ -149,6 +149,7 @@
@ stdcall wine_vkEnumerateDeviceExtensionProperties(ptr str ptr ptr) @ stdcall wine_vkEnumerateDeviceExtensionProperties(ptr str ptr ptr)
@ stdcall wine_vkEnumerateDeviceLayerProperties(ptr ptr ptr) @ stdcall wine_vkEnumerateDeviceLayerProperties(ptr ptr ptr)
@ stdcall wine_vkEnumerateInstanceExtensionProperties(str ptr ptr) @ stdcall wine_vkEnumerateInstanceExtensionProperties(str ptr ptr)
@ stdcall wine_vkEnumerateInstanceLayerProperties(ptr ptr)
@ stdcall wine_vkEnumerateInstanceVersion(ptr) @ stdcall wine_vkEnumerateInstanceVersion(ptr)
@ stdcall wine_vkEnumeratePhysicalDeviceGroups(ptr ptr ptr) @ stdcall wine_vkEnumeratePhysicalDeviceGroups(ptr ptr ptr)
@ stdcall wine_vkEnumeratePhysicalDevices(ptr ptr ptr) @ stdcall wine_vkEnumeratePhysicalDevices(ptr ptr ptr)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment