From c3f69d784e6e9b9c56d990b3af2e635b5051c553 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 18 Apr 2023 17:08:40 -0400 Subject: [PATCH] zink: fix non-db bindless texture buffers the db members are only populated in db mode fixes Dawn of War 3 crash on launch Fixes: 99ba529feed ("zink: implement descriptor buffer handling of bindless texture") Part-of: (cherry picked from commit 96a0b1e9880cee88905fe45451404e0d3120f382) --- .pick_status.json | 2 +- src/gallium/drivers/zink/zink_context.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 1aa6eee2b90..e52498dbc99 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1165,7 +1165,7 @@ "description": "zink: fix non-db bindless texture buffers", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "99ba529feed6f9917a44458a38acaf0b3d6d261d" }, diff --git a/src/gallium/drivers/zink/zink_context.h b/src/gallium/drivers/zink/zink_context.h index df48e2d4a02..c75879e0f5d 100644 --- a/src/gallium/drivers/zink/zink_context.h +++ b/src/gallium/drivers/zink/zink_context.h @@ -54,7 +54,7 @@ static inline struct zink_resource * zink_descriptor_surface_resource(struct zink_descriptor_surface *ds) { return ds->is_buffer ? - zink_descriptor_mode == ZINK_DESCRIPTOR_MODE_DB ? (struct zink_resource*)ds->bufferview->pres : zink_resource(ds->db.pres) : + zink_descriptor_mode == ZINK_DESCRIPTOR_MODE_DB ? zink_resource(ds->db.pres) : zink_resource(ds->bufferview->pres) : (struct zink_resource*)ds->surface->base.texture; }