aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/glsl/ir_reader.cpp
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-09-26 17:08:48 +0200
committermarha <marha@users.sourceforge.net>2011-09-26 17:08:48 +0200
commit95acf9816e008fa46a6c2fa2f35500deb358bb69 (patch)
treead86feed38d780515cf9da608c5ea21eed04e17d /mesalib/src/glsl/ir_reader.cpp
parent4f67039e9191d5251c39069bd791a05c5cf22022 (diff)
parent873965b49f283ad028dd4e0e5b7e93a758c84993 (diff)
downloadvcxsrv-95acf9816e008fa46a6c2fa2f35500deb358bb69.tar.gz
vcxsrv-95acf9816e008fa46a6c2fa2f35500deb358bb69.tar.bz2
vcxsrv-95acf9816e008fa46a6c2fa2f35500deb358bb69.zip
Merge remote-tracking branch 'origin/released'
Conflicts: libXmu/src/CmapAlloc.c
Diffstat (limited to 'mesalib/src/glsl/ir_reader.cpp')
-rw-r--r--mesalib/src/glsl/ir_reader.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/mesalib/src/glsl/ir_reader.cpp b/mesalib/src/glsl/ir_reader.cpp
index 2d0bccb78..afb06b3be 100644
--- a/mesalib/src/glsl/ir_reader.cpp
+++ b/mesalib/src/glsl/ir_reader.cpp
@@ -79,7 +79,8 @@ _mesa_glsl_read_ir(_mesa_glsl_parse_state *state, exec_list *instructions,
void
ir_reader::read(exec_list *instructions, const char *src, bool scan_for_protos)
{
- s_expression *expr = s_expression::read_expression(mem_ctx, src);
+ void *sx_mem_ctx = ralloc_context(NULL);
+ s_expression *expr = s_expression::read_expression(sx_mem_ctx, src);
if (expr == NULL) {
ir_read_error(NULL, "couldn't parse S-Expression.");
return;
@@ -92,7 +93,7 @@ ir_reader::read(exec_list *instructions, const char *src, bool scan_for_protos)
}
read_instructions(instructions, expr, NULL);
- ralloc_free(expr);
+ ralloc_free(sx_mem_ctx);
if (debug)
validate_ir_tree(instructions);