zink: fix non-db bindless texture buffers
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Tue, 18 Apr 2023 21:08:40 +0000 (17:08 -0400)
committerMarge Bot <emma+marge@anholt.net>
Wed, 19 Apr 2023 03:25:36 +0000 (03:25 +0000)
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: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22566>

src/gallium/drivers/zink/zink_context.h

index df48e2d..c75879e 100644 (file)
@@ -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;
 }