diff options
author | Icecream95 <ixn@disroot.org> | 2020-12-29 01:13:49 +1300 |
---|---|---|
committer | Marge Bot <eric+marge@anholt.net> | 2021-01-01 02:58:49 +0000 |
commit | f3a00c351defca57f1871bf68814ade8782ed202 (patch) | |
tree | c85cc773afcd574673cd8da8a36d7a4044af1aa6 | |
parent | ab9751759671c6d8ed9d297808bfcc5e2e646f3e (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.c | 8 |
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; |