summaryrefslogtreecommitdiff
path: root/lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c')
-rw-r--r--lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c b/lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c
index 2de23e498..8e7070a72 100644
--- a/lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c
+++ b/lib/mesa/src/gallium/drivers/freedreno/ir3/ir3_cache.c
@@ -97,6 +97,10 @@ ir3_cache_lookup(struct ir3_cache *cache, const struct ir3_cache_key *key,
struct ir3_shader_variant *vs = ir3_shader_variant(key->vs, key->key, false, debug);
struct ir3_shader_variant *fs = ir3_shader_variant(key->fs, key->key, false, debug);
+ if (!bs || !vs || !fs) {
+ return NULL;
+ }
+
struct ir3_program_state *state =
cache->funcs->create_state(cache->data, bs, vs, fs, &key->key);
state->key = *key;