Mesa (master): radv: destroy the base object if VkCreateInstance() failed

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Jul 15 12:19:06 UTC 2020


Module: Mesa
Branch: master
Commit: 0859dcb57c18905b2f30e78e1458fea36d111e20
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0859dcb57c18905b2f30e78e1458fea36d111e20

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Sun Jul 12 13:40:14 2020 +0200

radv: destroy the base object if VkCreateInstance() failed

Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5868>

---

 src/amd/vulkan/radv_device.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 8f2ea1b0def..e1e3c0b8a85 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -662,6 +662,7 @@ VkResult radv_CreateInstance(
 
 		if (idx >= RADV_INSTANCE_EXTENSION_COUNT ||
 		    !radv_instance_extensions_supported.extensions[idx]) {
+			vk_object_base_finish(&instance->base);
 			vk_free2(&default_alloc, pAllocator, instance);
 			return vk_error(instance, VK_ERROR_EXTENSION_NOT_PRESENT);
 		}
@@ -718,6 +719,7 @@ VkResult radv_CreateInstance(
 
 	result = vk_debug_report_instance_init(&instance->debug_report_callbacks);
 	if (result != VK_SUCCESS) {
+		vk_object_base_finish(&instance->base);
 		vk_free2(&default_alloc, pAllocator, instance);
 		return vk_error(instance, result);
 	}



More information about the mesa-commit mailing list