From 9fa2d9bd50e6d464e102111c66a14cb1b20c5e0b Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Wed, 14 Feb 2024 15:57:59 -0500 Subject: [PATCH] zink: fix swapchain readback conditional this check is intended to determine whether the current backbuffer has data, which correlates to (is_acquired && has_data). here, that corresponds better to checking for a valid image index && nonzero buffer age Part-of: --- src/gallium/drivers/zink/zink_kopper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_kopper.c b/src/gallium/drivers/zink/zink_kopper.c index 2106c5681f1..1bebbe40902 100644 --- a/src/gallium/drivers/zink/zink_kopper.c +++ b/src/gallium/drivers/zink/zink_kopper.c @@ -859,7 +859,7 @@ zink_kopper_acquire_readback(struct zink_context *ctx, struct zink_resource *res /* if this hasn't been presented or if it has data, use this as the readback target */ if (res->obj->last_dt_idx == UINT32_MAX || - (zink_kopper_acquired(cdt, res->obj->dt_idx) && cdt->swapchain->images[res->obj->dt_idx].dt_has_data)) { + (res->obj->dt_idx != UINT32_MAX && cdt->swapchain->images[res->obj->dt_idx].age)) { *readback = res; return false; }