Close memory leaks in glsl_type (constructor and get_array_instance)

Add a talloc ctx to both get_array_instance and the glsl_type
constructor in order to be able to call talloc_size instead of
malloc.

This fix now makes glsl-orangebook-ch06-bump.frag 99.99% leak free:

	total heap usage: 55,623 allocs, 55,615

Only 8 missing frees now.
This commit is contained in:
Carl Worth 2010-06-18 17:52:59 -07:00
parent dc5811fd0c
commit 12c411504c
6 changed files with 25 additions and 18 deletions

View file

@ -279,7 +279,8 @@ process_array_constructor(exec_list *instructions,
if (constructor_type->length == 0) {
constructor_type =
glsl_type::get_array_instance(constructor_type->element_type(),
glsl_type::get_array_instance(state,
constructor_type->element_type(),
parameter_count);
assert(constructor_type != NULL);
assert(constructor_type->length == parameter_count);