summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIcecream95 <ixn@disroot.org>2020-12-29 01:13:49 +1300
committerMarge Bot <eric+marge@anholt.net>2021-01-01 02:58:49 +0000
commitf3a00c351defca57f1871bf68814ade8782ed202 (patch)
treec85cc773afcd574673cd8da8a36d7a4044af1aa6
parentab9751759671c6d8ed9d297808bfcc5e2e646f3e (diff)
panfrost: Allow NULL for some binding functions
Handle Clover passing NULL to bind_sampler_states and set_sampler_views when cleaning up after launching a job. Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8264>
-rw-r--r--src/gallium/drivers/panfrost/pan_context.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gallium/drivers/panfrost/pan_context.c b/src/gallium/drivers/panfrost/pan_context.c
index b4ae6609d6f..9be59505cf1 100644
--- a/src/gallium/drivers/panfrost/pan_context.c
+++ b/src/gallium/drivers/panfrost/pan_context.c
@@ -728,7 +728,10 @@ panfrost_bind_sampler_states(
/* XXX: Should upload, not just copy? */
ctx->sampler_count[shader] = num_sampler;
- memcpy(ctx->samplers[shader], sampler, num_sampler * sizeof (void *));
+ if (sampler)
+ memcpy(ctx->samplers[shader], sampler, num_sampler * sizeof (void *));
+ else
+ memset(ctx->samplers[shader], 0, num_sampler * sizeof (void *));
}
static bool
@@ -1121,6 +1124,9 @@ panfrost_set_sampler_views(
assert(start_slot == 0);
+ if (!views)
+ num_views = 0;
+
for (i = 0; i < num_views; ++i) {
if (views[i])
new_nr = i + 1;