Mesa (master): i965: free shader's constant buffer in brwDeleteProgram()
Brian Paul
brianp at kemper.freedesktop.org
Thu Apr 9 16:36:39 UTC 2009
Module: Mesa
Branch: master
Commit: 3163ea145309f1f8e103cc880ea40c61af5fb5cd
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3163ea145309f1f8e103cc880ea40c61af5fb5cd
Author: Brian Paul <brianp at vmware.com>
Date: Thu Apr 9 10:33:08 2009 -0600
i965: free shader's constant buffer in brwDeleteProgram()
Fixes mem leak observed with texcombine test.
---
src/mesa/drivers/dri/i965/brw_program.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c
index 457bc2f..fbf1ddd 100644
--- a/src/mesa/drivers/dri/i965/brw_program.c
+++ b/src/mesa/drivers/dri/i965/brw_program.c
@@ -95,6 +95,12 @@ static struct gl_program *brwNewProgram( GLcontext *ctx,
static void brwDeleteProgram( GLcontext *ctx,
struct gl_program *prog )
{
+ if (prog->Target == GL_FRAGMENT_PROGRAM_ARB) {
+ struct gl_fragment_program *fprog = (struct gl_fragment_program *) prog;
+ struct brw_fragment_program *brw_fprog = brw_fragment_program(fprog);
+ dri_bo_unreference(brw_fprog->const_buffer);
+ }
+
_mesa_delete_program( ctx, prog );
}
More information about the mesa-commit
mailing list