diff --git a/ext/native/thin3d/VulkanQueueRunner.cpp b/ext/native/thin3d/VulkanQueueRunner.cpp index b97a9a0f4a..991374fb92 100644 --- a/ext/native/thin3d/VulkanQueueRunner.cpp +++ b/ext/native/thin3d/VulkanQueueRunner.cpp @@ -89,8 +89,12 @@ void VulkanQueueRunner::ResizeReadbackBuffer(VkDeviceSize requiredSize) { void VulkanQueueRunner::DestroyDeviceObjects() { INFO_LOG(G3D, "VulkanQueueRunner::DestroyDeviceObjects"); - vulkan_->Delete().QueueDeleteDeviceMemory(readbackMemory_); - vulkan_->Delete().QueueDeleteBuffer(readbackBuffer_); + if (readbackMemory_) { + vulkan_->Delete().QueueDeleteDeviceMemory(readbackMemory_); + } + if (readbackBuffer_) { + vulkan_->Delete().QueueDeleteBuffer(readbackBuffer_); + } readbackBufferSize_ = 0; renderPasses_.Iterate([&](const RPKey &rpkey, VkRenderPass rp) {