From 71d0bbfcb2853f37b580ec7b705e55bb0eb426fa Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Tue, 23 Mar 2010 13:21:19 -0700 Subject: [PATCH] Disallow passing NULL for state to _mesa_glsl_error The two places that were still passing NULL had a state pointer to pass. Not passing it in these places prevented termination of compilation of erroneous programs. --- ast_to_hir.cpp | 4 ++-- glsl_parser_extras.cpp | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/ast_to_hir.cpp b/ast_to_hir.cpp index b4a3d05..563cb92 100644 --- a/ast_to_hir.cpp +++ b/ast_to_hir.cpp @@ -650,7 +650,7 @@ ast_expression::hir(exec_list *instructions, if (var != NULL) { type = result->type; } else { - _mesa_glsl_error(& loc, NULL, "`%s' undeclared", + _mesa_glsl_error(& loc, state, "`%s' undeclared", this->primary_expression.identifier); error_emitted = true; @@ -704,7 +704,7 @@ ast_expression::hir(exec_list *instructions, } if (is_error_type(type) && !error_emitted) - _mesa_glsl_error(& loc, NULL, "type mismatch"); + _mesa_glsl_error(& loc, state, "type mismatch"); return result; } diff --git a/glsl_parser_extras.cpp b/glsl_parser_extras.cpp index 3a2038a..b774d8b 100644 --- a/glsl_parser_extras.cpp +++ b/glsl_parser_extras.cpp @@ -44,8 +44,7 @@ _mesa_glsl_error(YYLTYPE *locp, _mesa_glsl_parse_state *state, int len; va_list ap; - if (state) - state->error = true; + state->error = true; len = snprintf(buf, sizeof(buf), "%u:%u(%u): error: ", locp->source, locp->first_line, locp->first_column); -- 2.7.4