From 19598aaa5d0ea318ebd4a7e731bcaacaa4f3fe7c Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Thu, 1 Oct 2015 20:21:47 -0400 Subject: [PATCH] glsl: avoid leaking hiddenUniforms map when there are no uniforms Signed-off-by: Ilia Mirkin Reviewed-by: Iago Toral Quiroga --- src/glsl/link_uniforms.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp index 47d49c8..740b0a4 100644 --- a/src/glsl/link_uniforms.cpp +++ b/src/glsl/link_uniforms.cpp @@ -1131,15 +1131,15 @@ link_assign_uniform_locations(struct gl_shader_program *prog, const unsigned num_data_slots = uniform_size.num_values; const unsigned hidden_uniforms = uniform_size.num_hidden_uniforms; + /* assign hidden uniforms a slot id */ + hiddenUniforms->iterate(assign_hidden_uniform_slot_id, &uniform_size); + delete hiddenUniforms; + /* On the outside chance that there were no uniforms, bail out. */ if (num_uniforms == 0) return; - /* assign hidden uniforms a slot id */ - hiddenUniforms->iterate(assign_hidden_uniform_slot_id, &uniform_size); - delete hiddenUniforms; - struct gl_uniform_storage *uniforms = rzalloc_array(prog, struct gl_uniform_storage, num_uniforms); union gl_constant_value *data = -- 2.7.4