diff options
-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; |