[PATCH 08/11] winevulkan: Avoid goto in wine_vk_instance_load_physical_devices().
Józef Kucia
jkucia at codeweavers.com
Thu Mar 29 07:53:55 CDT 2018
Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
---
Cleanup is a single line
---
dlls/winevulkan/vulkan.c | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
diff --git a/dlls/winevulkan/vulkan.c b/dlls/winevulkan/vulkan.c
index 9fa1d39982d2..4c9874c78473 100644
--- a/dlls/winevulkan/vulkan.c
+++ b/dlls/winevulkan/vulkan.c
@@ -341,7 +341,7 @@ static void wine_vk_instance_convert_create_info(const VkInstanceCreateInfo *src
static VkResult wine_vk_instance_load_physical_devices(struct VkInstance_T *instance)
{
VkResult res;
- struct VkPhysicalDevice_T **tmp_phys_devs = NULL;
+ struct VkPhysicalDevice_T **tmp_phys_devs;
uint32_t num_phys_devs = 0;
unsigned int i;
@@ -362,13 +362,16 @@ static VkResult wine_vk_instance_load_physical_devices(struct VkInstance_T *inst
res = instance->funcs.p_vkEnumeratePhysicalDevices(instance->instance, &num_phys_devs, tmp_phys_devs);
if (res != VK_SUCCESS)
- goto err;
+ {
+ heap_free(tmp_phys_devs);
+ return res;
+ }
instance->phys_devs = heap_calloc(num_phys_devs, sizeof(*instance->phys_devs));
if (!instance->phys_devs)
{
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto err;
+ heap_free(tmp_phys_devs);
+ return VK_ERROR_OUT_OF_HOST_MEMORY;
}
/* Wrap each native physical device handle into a dispatchable object for the ICD loader. */
@@ -378,8 +381,8 @@ static VkResult wine_vk_instance_load_physical_devices(struct VkInstance_T *inst
if (!phys_dev)
{
ERR("Unable to allocate memory for physical device!\n");
- res = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto err;
+ heap_free(tmp_phys_devs);
+ return VK_ERROR_OUT_OF_HOST_MEMORY;
}
instance->phys_devs[i] = phys_dev;
@@ -389,10 +392,6 @@ static VkResult wine_vk_instance_load_physical_devices(struct VkInstance_T *inst
heap_free(tmp_phys_devs);
return VK_SUCCESS;
-
-err:
- heap_free(tmp_phys_devs);
- return res;
}
/* Helper function used for freeing an instance structure. This function supports full
--
2.16.1
More information about the wine-devel
mailing list