glsl: Free the loop state context when we free the loop state.
authorEric Anholt <eric@anholt.net>
Mon, 8 Nov 2010 22:38:18 +0000 (14:38 -0800)
committerEric Anholt <eric@anholt.net>
Thu, 11 Nov 2010 23:12:37 +0000 (15:12 -0800)
Since this was talloced off of NULL instead of the compile state, it
was a real leak over the course of the program.  Noticed with
valgrind --leak-check=full --show-reachable=yes.  We should really
change these passes to generally get the compile context as an argument
so simple mistakes like this stop mattering.

src/glsl/loop_analysis.cpp

index 91e34da0ee49247ab62ddca076ab45cd5b12eab5..ff7adf00a21c920e70fdb1928c85e79e744944d8 100644 (file)
@@ -44,6 +44,7 @@ loop_state::loop_state()
 loop_state::~loop_state()
 {
    hash_table_dtor(this->ht);
+   talloc_free(this->mem_ctx);
 }