From: Eric Anholt Date: Tue, 27 Jul 2010 22:25:07 +0000 (-0700) Subject: glsl2: When stealing var->constant_value, steal its children as well. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f9b0e5e322a676cf778dc3785281040fcc0bd248;p=mesa.git glsl2: When stealing var->constant_value, steal its children as well. Fixes: glsl1-GLSL 1.20 uniform array constructor --- diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp index 6dccbd806e8..c75d560c48c 100644 --- a/src/glsl/ir.cpp +++ b/src/glsl/ir.cpp @@ -911,7 +911,7 @@ steal_memory(ir_instruction *ir, void *new_ctx) ir_variable *var = ir->as_variable(); ir_constant *constant = ir->as_constant(); if (var != NULL && var->constant_value != NULL) - talloc_steal(ir, var->constant_value); + steal_memory(var->constant_value, ir); /* The components of aggregate constants are not visited by the normal * visitor, so steal their values by hand.