aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/shader/slang/slang_emit.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/shader/slang/slang_emit.c b/src/mesa/shader/slang/slang_emit.c
index 3d76c80b584..323fc511a6e 100644
--- a/src/mesa/shader/slang/slang_emit.c
+++ b/src/mesa/shader/slang/slang_emit.c
@@ -1633,12 +1633,18 @@ emit(slang_emit_info *emitInfo, slang_ir_node *n)
if (!n)
return NULL;
+ if (emitInfo->log->error_flag) {
+ return NULL;
+ }
+
switch (n->Opcode) {
case IR_SEQ:
/* sequence of two sub-trees */
assert(n->Children[0]);
assert(n->Children[1]);
emit(emitInfo, n->Children[0]);
+ if (emitInfo->log->error_flag)
+ return NULL;
inst = emit(emitInfo, n->Children[1]);
#if 0
assert(!n->Store);