mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2024-12-12 19:54:33 +08:00
zink: fix descriptor cache pointer array allocation
this got mixed up during some refactor and started indexing based on the number of bindings instead of the number of descriptors, which means that array descriptor bindings would have overlapping array memory cc: mesa-stable Acked-by: Emma Anholt <emma@anholt.net> Reviewed-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15226>
This commit is contained in:
parent
c5f585f45a
commit
ab3725f533
@ -678,13 +678,13 @@ allocate_desc_set(struct zink_context *ctx, struct zink_program *pg, enum zink_d
|
||||
#endif
|
||||
switch (type) {
|
||||
case ZINK_DESCRIPTOR_TYPE_SAMPLER_VIEW:
|
||||
zds->sampler_states = (struct zink_sampler_state**)&samplers[i * pool->key->layout->num_bindings];
|
||||
zds->sampler_states = (struct zink_sampler_state**)&samplers[i * num_resources];
|
||||
FALLTHROUGH;
|
||||
case ZINK_DESCRIPTOR_TYPE_IMAGE:
|
||||
zds->surfaces = &surfaces[i * pool->key->layout->num_bindings];
|
||||
zds->surfaces = &surfaces[i * num_resources];
|
||||
break;
|
||||
default:
|
||||
zds->res_objs = (struct zink_resource_object**)&res_objs[i * pool->key->layout->num_bindings];
|
||||
zds->res_objs = (struct zink_resource_object**)&res_objs[i * num_resources];
|
||||
break;
|
||||
}
|
||||
zds->desc_set = desc_set[i];
|
||||
|
Loading…
Reference in New Issue
Block a user