From 3d97367a60634201c42d2d64a2ab6439510e2c25 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 18 Apr 2022 18:25:55 -0400 Subject: [PATCH] zink: rework zink_kopper_update() assert the dt might have been killed, so just assert that it's a display target fixes #6317 Fixes: 8ade5588e39 ("zink: add kopper api") Reviewed-by: Adam Jackson Part-of: --- src/gallium/drivers/zink/zink_kopper.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_kopper.c b/src/gallium/drivers/zink/zink_kopper.c index 9f36f93b466..3fbf6857a78 100644 --- a/src/gallium/drivers/zink/zink_kopper.c +++ b/src/gallium/drivers/zink/zink_kopper.c @@ -681,7 +681,9 @@ zink_kopper_update(struct pipe_screen *pscreen, struct pipe_resource *pres, int { struct zink_resource *res = zink_resource(pres); struct zink_screen *screen = zink_screen(pscreen); - assert(res->obj->dt); + assert(pres->bind & PIPE_BIND_DISPLAY_TARGET); + if (!res->obj->dt) + return false; struct kopper_displaytarget *cdt = kopper_displaytarget(res->obj->dt); if (cdt->type != KOPPER_X11) { *w = res->base.b.width0;