From: Keith Whitwell Date: Tue, 9 Aug 2005 16:11:28 +0000 (+0000) Subject: Decrement the context's refcounts on part-used storage structs on X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c91720fb1ab06af683a33b8734391a5a73cc23e5;p=mesa.git Decrement the context's refcounts on part-used storage structs on context destroy. Fixes memory leak. --- diff --git a/src/mesa/tnl/t_save_api.c b/src/mesa/tnl/t_save_api.c index b3637cf8d9b..b43b048083f 100644 --- a/src/mesa/tnl/t_save_api.c +++ b/src/mesa/tnl/t_save_api.c @@ -1708,5 +1708,15 @@ void _tnl_save_init( GLcontext *ctx ) */ void _tnl_save_destroy( GLcontext *ctx ) { - (void) ctx; + TNLcontext *tnl = TNL_CONTEXT(ctx); + + /* Decrement the refcounts. References may still be held by + * display lists yet to be destroyed, so it may not yet be time to + * free these items. + */ + if ( --tnl->save.prim_store->refcount == 0 ) + FREE( tnl->save.prim_store ); + + if ( --tnl->save.vertex_store->refcount == 0 ) + FREE( tnl->save.vertex_store ); }