From: Dave Airlie <airl...@redhat.com>

This fixes a crash in
GL43-CTS.shader_subroutine.subroutines_not_allowed_as_variables_constructors_and_argument_or_return_types

If we can't find the func_name in one of these paths,
we have emitted an earlier error so just return here.

Signed-off-by: Dave Airlie <airl...@redhat.com>
---
 src/compiler/glsl/ast_function.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/compiler/glsl/ast_function.cpp 
b/src/compiler/glsl/ast_function.cpp
index a97e6c9..f74394f 100644
--- a/src/compiler/glsl/ast_function.cpp
+++ b/src/compiler/glsl/ast_function.cpp
@@ -2078,6 +2078,10 @@ ast_function_expression::hir(exec_list *instructions,
          func_name = id->primary_expression.identifier;
       }
 
+      /* an error was emitted earlier */
+      if (!func_name)
+         return ir_rvalue::error_value(ctx);
+
       ir_function_signature *sig =
         match_function_by_name(func_name, &actual_parameters, state);
 
-- 
2.7.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to