diff --git a/src/util/vulkan_device.cpp b/src/util/vulkan_device.cpp index b10eaaab80..a462cf4968 100644 --- a/src/util/vulkan_device.cpp +++ b/src/util/vulkan_device.cpp @@ -1995,7 +1995,10 @@ bool VulkanDevice::CreateDeviceAndMainSwapChain(std::string_view adapter, Featur swap_chain = std::make_unique(wi, vsync_mode, allow_present_throttle, exclusive_fullscreen_control); if (!swap_chain->CreateSurface(m_instance, m_physical_device, error)) + { + swap_chain->Destroy(*this, false); return false; + } } // Attempt to create the device.