From 6915f07184a31899700ae93d15b1d72e2e6548db Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 16 Jun 2020 11:26:59 +0100 Subject: [PATCH] Fix image states being removed too early on image destruction * This causes problems if we're doing a last-second initial state prepare on destruction. --- renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp index ac4360869..e8f24135f 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_misc_funcs.cpp @@ -247,10 +247,11 @@ void WrappedVulkan::vkDestroyImage(VkDevice device, VkImage obj, if(obj == VK_NULL_HANDLE) return; - EraseImageState(GetResID(obj)); - VkImage unwrappedObj = Unwrap(obj); GetResourceManager()->ReleaseWrappedResource(obj, true); + + EraseImageState(GetResID(obj)); + return ObjDisp(device)->DestroyImage(Unwrap(device), unwrappedObj, pAllocator); }