radv: fix double free when creating a fence failed
authorSamuel Pitoiset <samuel.pitoiset@gmail.com>
Tue, 9 Feb 2021 22:13:15 +0000 (23:13 +0100)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 10 Feb 2021 07:45:49 +0000 (08:45 +0100)
It's already freed in radv_destroy_fence().

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8938>

src/amd/vulkan/radv_device.c

index 978bbbe..730cf60 100644 (file)
@@ -5719,7 +5719,6 @@ VkResult radv_CreateFence(
 
                fence->permanent.fence = device->ws->create_fence();
                if (!fence->permanent.fence) {
-                       vk_free2(&device->vk.alloc, pAllocator, fence);
                        radv_destroy_fence(device, pAllocator, fence);
                        return vk_error(device->instance, VK_ERROR_OUT_OF_HOST_MEMORY);
                }