diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index 62990de35f8..5a945f52d61 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -1461,7 +1461,7 @@ zink_drm_create_screen(int fd, const struct pipe_screen_config *config) if (ret && !ret->info.have_KHR_external_memory_fd) { debug_printf("ZINK: KHR_external_memory_fd required!\n"); - free(ret); + zink_destroy_screen(&ret->base); return NULL; }