From: Eric Anholt Date: Wed, 30 Jun 2010 18:51:54 +0000 (-0700) Subject: glsl2: Make function names and variable names be children of the node. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0eda9ae0a6bcd6a7e014df046c87fac5caee0e9e;p=mesa.git glsl2: Make function names and variable names be children of the node. This avoids losing their memory when the parser state is freed. --- diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp index 4eb0e9e33eb..60ee36d17cb 100644 --- a/src/glsl/ir.cpp +++ b/src/glsl/ir.cpp @@ -733,7 +733,7 @@ ir_variable::ir_variable(const struct glsl_type *type, const char *name) mode(ir_var_auto), interpolation(ir_var_smooth), array_lvalue(false) { this->type = type; - this->name = name; + this->name = talloc_strdup(this, name); this->location = -1; this->warn_extension = NULL; this->constant_value = NULL; @@ -820,9 +820,8 @@ ir_function_signature::replace_parameters(exec_list *new_params) ir_function::ir_function(const char *name) - : name(name) { - /* empty */ + this->name = talloc_strdup(this, name); }