From: Eric Anholt Date: Wed, 7 Jul 2010 15:38:16 +0000 (-0700) Subject: glsl2: Don't forget to walk the parameters to a function in the hv. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=773025b92c934014b9ceb4ebfdabcfc9d8587aa2;p=mesa.git glsl2: Don't forget to walk the parameters to a function in the hv. Fixes segfaults from use after free after the steal of ir nodes and free of the compile context. --- diff --git a/src/glsl/ir_hv_accept.cpp b/src/glsl/ir_hv_accept.cpp index e772018a458..1a88c594394 100644 --- a/src/glsl/ir_hv_accept.cpp +++ b/src/glsl/ir_hv_accept.cpp @@ -116,6 +116,10 @@ ir_function_signature::accept(ir_hierarchical_visitor *v) if (s != visit_continue) return (s == visit_continue_with_parent) ? visit_continue : s; + s = visit_list_elements(v, &this->parameters); + if (s == visit_stop) + return s; + s = visit_list_elements(v, &this->body); return (s == visit_stop) ? s : v->visit_leave(this); }