Module: wine Branch: master Commit: 6d475f150d4b3376c452bc333f2756d9867d901c URL: https://source.winehq.org/git/wine.git/?a=commit;h=6d475f150d4b3376c452bc333...
Author: Józef Kucia jkucia@codeweavers.com Date: Fri Mar 16 16:30:41 2018 +0100
winevulkan: Fix vkEnumerateInstanceExtensionProperties().
Signed-off-by: Józef Kucia jkucia@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/winevulkan/vulkan.c | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-)
diff --git a/dlls/winevulkan/vulkan.c b/dlls/winevulkan/vulkan.c index 41a45ef..49ec147 100644 --- a/dlls/winevulkan/vulkan.c +++ b/dlls/winevulkan/vulkan.c @@ -823,19 +823,14 @@ static VkResult WINAPI wine_vkEnumerateInstanceExtensionProperties(const char *l if (wine_vk_instance_extension_supported(host_properties[i].extensionName)) { TRACE("Enabling extension '%s'\n", host_properties[i].extensionName); - memcpy(&properties[j], &host_properties[i], sizeof(*properties)); + properties[j] = host_properties[i]; j++; } } - - /* Return incomplete if the buffer is smaller than the number of supported extensions. */ - if (*count < num_properties) - res = VK_INCOMPLETE; - else - res = VK_SUCCESS; + *count = min(*count, num_properties);
heap_free(host_properties); - return res; + return *count < num_properties ? VK_INCOMPLETE : VK_SUCCESS; }
VkResult WINAPI wine_vkEnumeratePhysicalDevices(VkInstance instance, uint32_t *count,