From 7e76c0ea8231db9def192f56f49b8224ce60f806 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Sat, 23 Jan 2021 04:23:51 -0600 Subject: [PATCH] radv: Properly clean up vk_device Reviewed-by: Dave Airlie Reviewed-by: Samuel Pitoiset Reviewed-by: Bas Nieuwenhuizen Part-of: --- src/amd/vulkan/radv_device.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c index 7353fb46abd..d3a5bcbe304 100644 --- a/src/amd/vulkan/radv_device.c +++ b/src/amd/vulkan/radv_device.c @@ -2810,6 +2810,7 @@ VkResult radv_CreateDevice( const char *ext_name = pCreateInfo->ppEnabledExtensionNames[i]; int index = radv_get_device_extension_index(ext_name); if (index < 0 || !physical_device->supported_extensions.extensions[index]) { + vk_device_finish(&device->vk); vk_free(&device->vk.alloc, device); return vk_error(physical_device->instance, VK_ERROR_EXTENSION_NOT_PRESENT); } @@ -3080,6 +3081,7 @@ fail: vk_free(&device->vk.alloc, device->queues[i]); } + vk_device_finish(&device->vk); vk_free(&device->vk.alloc, device); return result; } @@ -3124,6 +3126,7 @@ void radv_DestroyDevice( free(device->thread_trace.trigger_file); radv_thread_trace_finish(device); + vk_device_finish(&device->vk); vk_free(&device->vk.alloc, device); }