summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2010-03-23 13:21:19 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-03-23 13:21:19 -0700
commit71d0bbfcb2853f37b580ec7b705e55bb0eb426fa (patch)
tree7c38957675404fa622729ac8f2549e96bf62c3fb
parentf3f111eac45162e9634208cd7305981d8393328d (diff)
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.
-rw-r--r--ast_to_hir.cpp4
-rw-r--r--glsl_parser_extras.cpp3
2 files changed, 3 insertions, 4 deletions
diff --git a/ast_to_hir.cpp b/ast_to_hir.cpp
index b4a3d054eb..563cb92122 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 3a2038a153..b774d8b5f4 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);