diff --git a/src/virtio/vulkan/vn_pipeline.c b/src/virtio/vulkan/vn_pipeline.c index 7b4b0f95cc8..c2396d63465 100644 --- a/src/virtio/vulkan/vn_pipeline.c +++ b/src/virtio/vulkan/vn_pipeline.c @@ -259,7 +259,9 @@ vn_create_pipeline_handles(struct vn_device *dev, if (!pipeline) { for (uint32_t j = 0; j < i; j++) { - vk_free(alloc, pipeline_handles[j]); + pipeline = vn_pipeline_from_handle(pipeline_handles[j]); + vn_object_base_fini(&pipeline->base); + vk_free(alloc, pipeline); } memset(pipeline_handles, 0,