From ee64f59b1835e4add45b5038ed404ffe4311f91d Mon Sep 17 00:00:00 2001 From: Themaister Date: Wed, 6 Mar 2024 12:17:10 +0100 Subject: [PATCH] vulkan: Remove use of oldSwapchain. Works around a hang on gamescope. oldSwapchain generally isn't useful after all. Just use the same code paths everywhere. --- gfx/common/vulkan_common.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/gfx/common/vulkan_common.c b/gfx/common/vulkan_common.c index 3c0c4d8aed..fbfa861878 100644 --- a/gfx/common/vulkan_common.c +++ b/gfx/common/vulkan_common.c @@ -2202,13 +2202,9 @@ bool vulkan_create_swapchain(gfx_ctx_vulkan_data_t *vk, info.clipped = VK_TRUE; info.oldSwapchain = old_swapchain; -#ifdef _WIN32 - /* On Windows, do not try to reuse the swapchain. - * It causes a lot of issues on nVidia for some reason. */ info.oldSwapchain = VK_NULL_HANDLE; if (old_swapchain != VK_NULL_HANDLE) vkDestroySwapchainKHR(vk->context.device, old_swapchain, NULL); -#endif if (vkCreateSwapchainKHR(vk->context.device, &info, NULL, &vk->swapchain) != VK_SUCCESS) @@ -2217,11 +2213,6 @@ bool vulkan_create_swapchain(gfx_ctx_vulkan_data_t *vk, return false; } -#ifndef _WIN32 - if (old_swapchain != VK_NULL_HANDLE) - vkDestroySwapchainKHR(vk->context.device, old_swapchain, NULL); -#endif - vk->context.swapchain_width = swapchain_size.width; vk->context.swapchain_height = swapchain_size.height; #ifdef VULKAN_HDR_SWAPCHAIN