summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Graunke <kenneth@whitecape.org>2010-06-30 11:57:43 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-06-30 13:52:24 -0700
commitc7f4ff193a6f7cfae2e4cdc6c4b9162a16226dc0 (patch)
tree3d315460cb768eeba0a6139ec1117389208e4d80
parent629198b96a8f471c48932d6af56184b6c33b5fe5 (diff)
glsl2: Fix storing of dead memory in the symbol table.
decl->identifier is part of the AST, so it doesn't live very long. Instead, add var->name which is owned by var.
-rw-r--r--src/glsl/ast_to_hir.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index 53f17de7b95..a0ca7e5f6df 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -1851,7 +1851,7 @@ ast_declarator_list::hir(exec_list *instructions,
"const declaration of `%s' must be initialized");
}
- /* Add the vairable to the symbol table after processing the initializer.
+ /* Add the variable to the symbol table after processing the initializer.
* This differs from most C-like languages, but it follows the GLSL
* specification. From page 28 (page 34 of the PDF) of the GLSL 1.50
* spec:
@@ -1861,7 +1861,7 @@ ast_declarator_list::hir(exec_list *instructions,
* being declared if not."
*/
const bool added_variable =
- state->symbols->add_variable(decl->identifier, var);
+ state->symbols->add_variable(var->name, var);
assert(added_variable);
}