diff --git a/src/gallium/drivers/zink/zink_kopper.c b/src/gallium/drivers/zink/zink_kopper.c index 2a6f458c6ac..68022a8ac89 100644 --- a/src/gallium/drivers/zink/zink_kopper.c +++ b/src/gallium/drivers/zink/zink_kopper.c @@ -507,6 +507,7 @@ kopper_acquire(struct zink_screen *screen, struct zink_resource *res, uint64_t t res->obj->indefinite_acquire = true; p_atomic_inc(&cdt->swapchain->num_acquires); } + cdt->swapchain->dt_has_data = false; res->obj->dt_has_data = false; return VK_SUCCESS; } @@ -573,6 +574,7 @@ zink_kopper_acquire_submit(struct zink_screen *screen, struct zink_resource *res res->obj->acquired = true; /* this is now owned by the batch */ cdt->swapchain->acquires[res->obj->dt_idx] = VK_NULL_HANDLE; + cdt->swapchain->dt_has_data = true; return res->obj->acquire; } diff --git a/src/gallium/drivers/zink/zink_kopper.h b/src/gallium/drivers/zink/zink_kopper.h index 7e3e9d81beb..c35dd8ce901 100644 --- a/src/gallium/drivers/zink/zink_kopper.h +++ b/src/gallium/drivers/zink/zink_kopper.h @@ -43,6 +43,7 @@ struct kopper_swapchain { unsigned num_acquires; unsigned max_acquires; unsigned async_presents; + bool dt_has_data; }; enum kopper_type {