mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-10 19:00:13 +01:00
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 <leandro.ribeiro@collabora.com> Reviewed-by: Simon Ser <contact@emersion.fr> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12451>
This commit is contained in:
parent
03e457bb1a
commit
4cd187e71e
1 changed files with 1 additions and 12 deletions
|
|
@ -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;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue