From e049300d02c14d84d434ad3fb46f8c8ba612a6c2 Mon Sep 17 00:00:00 2001 From: Robin Voetter Date: Fri, 3 Jul 2020 15:48:26 +0200 Subject: [PATCH] Dispose of old swapchain after recreating This previously lead to X11 errors after aggressively resizing the window --- examples/swapchain.zig | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/examples/swapchain.zig b/examples/swapchain.zig index 6c2dd9b..7394d4f 100644 --- a/examples/swapchain.zig +++ b/examples/swapchain.zig @@ -64,6 +64,11 @@ pub const Swapchain = struct { }, null); errdefer gc.vkd.destroySwapchainKHR(gc.dev, handle, null); + if (old_handle != .null_handle) { + // Apparently, the old swapchain handle still needs to be destroyed after recreating. + gc.vkd.destroySwapchainKHR(gc.dev, old_handle, null); + } + const swap_images = try initSwapchainImages(gc, handle, surface_format.format, allocator); errdefer for (swap_images) |si| si.deinit(gc);