From 0aca086f7a8d13efa548753c6c7836a98719dbde Mon Sep 17 00:00:00 2001 From: Keith Whitwell Date: Wed, 12 Jan 2005 19:38:41 +0000 Subject: free buffer in t_vertex_c.c on context delete --- src/mesa/tnl/t_vertex.c | 2 ++ src/mesa/tnl/t_vertex.h | 1 + src/mesa/tnl/t_vertex_c.c | 8 ++++++++ 3 files changed, 11 insertions(+) (limited to 'src/mesa/tnl') diff --git a/src/mesa/tnl/t_vertex.c b/src/mesa/tnl/t_vertex.c index 2ed4c41759..bc60665bbd 100644 --- a/src/mesa/tnl/t_vertex.c +++ b/src/mesa/tnl/t_vertex.c @@ -1442,4 +1442,6 @@ void _tnl_free_vertices( GLcontext *ctx ) ALIGN_FREE(vtx->vertex_buf); vtx->vertex_buf = 0; } + + _tnl_free_c_codegen( &vtx->codegen ); } diff --git a/src/mesa/tnl/t_vertex.h b/src/mesa/tnl/t_vertex.h index caa222014c..615bbdb4e4 100644 --- a/src/mesa/tnl/t_vertex.h +++ b/src/mesa/tnl/t_vertex.h @@ -144,6 +144,7 @@ extern tnl_emit_func _tnl_codegen_emit( GLcontext *ctx ); extern void _tnl_init_c_codegen( struct tnl_clipspace_codegen *p ); +extern void _tnl_free_c_codegen( struct tnl_clipspace_codegen *p ); #define GET_VERTEX_STATE(ctx) &(TNL_CONTEXT(ctx)->clipspace) diff --git a/src/mesa/tnl/t_vertex_c.c b/src/mesa/tnl/t_vertex_c.c index a901aed14c..419e7b9242 100644 --- a/src/mesa/tnl/t_vertex_c.c +++ b/src/mesa/tnl/t_vertex_c.c @@ -257,3 +257,11 @@ void _tnl_init_c_codegen( struct tnl_clipspace_codegen *p ) p->buf_size = 2048; p->buf = (char *) MALLOC(p->buf_size); } + +void _tnl_free_c_codegen( struct tnl_clipspace_codegen *p ) +{ + if (p->buf) { + FREE(p->buf); + p->buf = 0; + } +} -- cgit v1.2.3