From 4cd187e71e784f3d08dedd82f658c5897d45b53a Mon Sep 17 00:00:00 2001 From: Leandro Ribeiro Date: Tue, 6 Jul 2021 16:00:12 -0300 Subject: [PATCH] vulkan/wsi/wayland: create swapchain using vk_zalloc() In wsi_wl_surface_create_swapchain() we have a piece of code to init some members of the chain to 0, in order to allow us to call wsi_wl_swapchain_destroy() for cleanup. Instead, we can use vk_zalloc() to allocate the chain, as it initializes all members of the struct to zero. This help us to avoid problems when people add new members to the struct and forget to initialize them. Also, it makes the code look better. Signed-off-by: Leandro Ribeiro Reviewed-by: Simon Ser Part-of: --- src/vulkan/wsi/wsi_common_wayland.c | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c index 4ad33e4..97dd7ee 100644 --- a/src/vulkan/wsi/wsi_common_wayland.c +++ b/src/vulkan/wsi/wsi_common_wayland.c @@ -1132,8 +1132,7 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, int num_images = pCreateInfo->minImageCount; size_t size = sizeof(*chain) + num_images * sizeof(chain->images[0]); - chain = vk_alloc(pAllocator, size, 8, - VK_SYSTEM_ALLOCATION_SCOPE_OBJECT); + chain = vk_zalloc(pAllocator, size, 8, VK_SYSTEM_ALLOCATION_SCOPE_OBJECT); if (chain == NULL) return VK_ERROR_OUT_OF_HOST_MEMORY; @@ -1144,16 +1143,6 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface, return result; } - /* Mark a bunch of stuff as NULL. This way we can just call - * destroy_swapchain for cleanup. - */ - for (uint32_t i = 0; i < num_images; i++) { - chain->images[i].buffer = NULL; - chain->images[i].data_ptr = NULL; - } - chain->surface = NULL; - chain->frame = NULL; - bool alpha = pCreateInfo->compositeAlpha == VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR; -- 2.7.4