From 64980c4f057aab18db38dc9817fecb8fde035c3f Mon Sep 17 00:00:00 2001 From: Sviatoslav Peleshko Date: Tue, 25 Mar 2025 21:21:51 +0200 Subject: [PATCH] vulkan/wsi/headless: Remove unnecessary wsi_configure_image() wsi_configure_image() with the same info is already called by configure_image() in wsi_swapchain_init(), so this second call is unnecessary. Furthermore, calling it the second time caused a memory leak of queue family indices array. Fixes: d4a2c0fc ("vulkan/wsi: add a headless swapchain implementation/option") Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12811 Signed-off-by: Sviatoslav Peleshko Reviewed-by: Lionel Landwerlin Part-of: --- src/vulkan/wsi/wsi_common_headless.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/vulkan/wsi/wsi_common_headless.c b/src/vulkan/wsi/wsi_common_headless.c index f907a44a88e..bb647816f64 100644 --- a/src/vulkan/wsi/wsi_common_headless.c +++ b/src/vulkan/wsi/wsi_common_headless.c @@ -471,12 +471,6 @@ wsi_headless_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, chain->base.image_count = num_images; chain->extent = pCreateInfo->imageExtent; chain->vk_format = pCreateInfo->imageFormat; - - result = wsi_configure_image(&chain->base, pCreateInfo, - 0, &chain->base.image_info); - if (result != VK_SUCCESS) { - goto fail; - } chain->base.image_info.create_mem = wsi_create_null_image_mem; @@ -484,7 +478,7 @@ wsi_headless_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, result = wsi_create_image(&chain->base, &chain->base.image_info, &chain->images[i].base); if (result != VK_SUCCESS) - return result; + goto fail; chain->images[i].busy = false; }