[Mesa-dev] [PATCH 5/6] mesa: Free uniforms correclty.

Stéphane Marchesin marcheu at chromium.org
Thu May 24 18:29:47 PDT 2012


From: Antoine Labour <piman at chromium.org>

This is an array of uniforms, not a single one.
---
 src/mesa/main/shaderobj.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/mesa/main/shaderobj.c b/src/mesa/main/shaderobj.c
index 7eb6f0b..d5ebf54 100644
--- a/src/mesa/main/shaderobj.c
+++ b/src/mesa/main/shaderobj.c
@@ -278,7 +278,8 @@ _mesa_clear_shader_program_data(struct gl_context *ctx,
                                 struct gl_shader_program *shProg)
 {
    if (shProg->UniformStorage) {
-      _mesa_uniform_detach_all_driver_storage(shProg->UniformStorage);
+      for (unsigned i = 0; i < shProg->NumUserUniformStorage; ++i)
+         _mesa_uniform_detach_all_driver_storage(&shProg->UniformStorage[i]);
       ralloc_free(shProg->UniformStorage);
       shProg->NumUserUniformStorage = 0;
       shProg->UniformStorage = NULL;
-- 
1.7.5.3.367.ga9930



More information about the mesa-dev mailing list