From 8b2255b35cbf754d8646152738ad10e2d044a7ff Mon Sep 17 00:00:00 2001 From: jackun Date: Tue, 16 Feb 2021 11:22:21 +0200 Subject: [PATCH] Fix crash on destroying NULL swapchain Vulkan spec allows calling vkDestroySwapchainKHR with VK_NULL_HANDLE swapchain. mesa MR#5616 --- src/vulkan.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/vulkan.cpp b/src/vulkan.cpp index 0dc1749e..306e1051 100644 --- a/src/vulkan.cpp +++ b/src/vulkan.cpp @@ -1837,6 +1837,12 @@ static void overlay_DestroySwapchainKHR( VkSwapchainKHR swapchain, const VkAllocationCallbacks* pAllocator) { + if (swapchain == VK_NULL_HANDLE) { + struct device_data *device_data = FIND(struct device_data, device); + device_data->vtable.DestroySwapchainKHR(device, swapchain, pAllocator); + return; + } + struct swapchain_data *swapchain_data = FIND(struct swapchain_data, swapchain);