diff --git a/renderdoc/driver/vulkan/vk_core.cpp b/renderdoc/driver/vulkan/vk_core.cpp index 548db9946..f6ff530d5 100644 --- a/renderdoc/driver/vulkan/vk_core.cpp +++ b/renderdoc/driver/vulkan/vk_core.cpp @@ -176,8 +176,6 @@ WrappedVulkan::~WrappedVulkan() if(VkMarkerRegion::vk == this) VkMarkerRegion::vk = NULL; - m_IndirectBuffer.Destroy(); - // in case the application leaked some objects, avoid crashing trying // to release them ourselves by clearing the resource manager. // In a well-behaved application, this should be a no-op. diff --git a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp index b7ebd9bf9..d8749eb1e 100644 --- a/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp +++ b/renderdoc/driver/vulkan/wrappers/vk_device_funcs.cpp @@ -592,6 +592,8 @@ void WrappedVulkan::Shutdown() m_Replay.DestroyResources(); + m_IndirectBuffer.Destroy(); + // destroy debug manager and any objects it created SAFE_DELETE(m_DebugManager); SAFE_DELETE(m_ShaderCache);