vulkan/wsi/wayland: Initialise wl_shm pointer in VkImage
authorDaniel Stone <daniels@collabora.com>
Thu, 15 Jul 2021 09:19:53 +0000 (10:19 +0100)
committerDaniel Stone <daniels@collabora.com>
Thu, 15 Jul 2021 20:57:30 +0000 (21:57 +0100)
We don't explicitly calloc the wsi_wl_image to zero; anything that's
expected to be valid needs to be explicitly initialised.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5063
Fixes: 6b36f35734a9 ("vulkan/wsi/wl: add wl_shm support for lavapipe.")
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Tested-by: Jan Beich <jbeich@freebsd.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11909>

src/vulkan/wsi/wsi_common_wayland.c

index cdafae1..f7ecc85 100644 (file)
@@ -1218,8 +1218,10 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
    /* 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++)
+   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;