Added Win32 memory debugging and fixed a few memory leaks (Gerk Huisma)
authorBrian Paul <brian.paul@tungstengraphics.com>
Thu, 19 Jul 2001 15:54:34 +0000 (15:54 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Thu, 19 Jul 2001 15:54:34 +0000 (15:54 +0000)
src/mesa/array_cache/ac_context.c
src/mesa/main/context.c
src/mesa/tnl/t_context.c

index e9c4fe8..569b62b 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: ac_context.c,v 1.4 2001/04/28 08:39:18 keithw Exp $ */
+/* $Id: ac_context.c,v 1.5 2001/07/19 15:54:35 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -263,6 +263,10 @@ void _ac_DestroyContext( GLcontext *ctx )
    }
 
    if (ac->Elts) FREE( ac->Elts );
+
+   /* Free the context structure itself */
+   FREE(ac);
+   ctx->acache_context = NULL;
 }
 
 void _ac_InvalidateState( GLcontext *ctx, GLuint new_state )
index 444789a..4f27181 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: context.c,v 1.144 2001/06/26 01:32:48 brianp Exp $ */
+/* $Id: context.c,v 1.145 2001/07/19 15:54:34 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -1607,6 +1607,13 @@ _mesa_free_context_data( GLcontext *ctx )
       }
    }
 
+   _math_matrix_dtr( &ctx->_ModelProjectMatrix );
+
+   _math_matrix_dtr(&ctx->ColorMatrix);
+   for (j = 0; j < MAX_COLOR_STACK_DEPTH - 1; j++) {
+      _math_matrix_dtr(&ctx->ColorStack[j]);
+   }
+
    _glthread_LOCK_MUTEX(ctx->Shared->Mutex);
    ctx->Shared->RefCount--;
    assert(ctx->Shared->RefCount >= 0);
@@ -1625,6 +1632,7 @@ _mesa_free_context_data( GLcontext *ctx )
    _mesa_free_texture_object( NULL, ctx->Texture.Proxy1D );
    _mesa_free_texture_object( NULL, ctx->Texture.Proxy2D );
    _mesa_free_texture_object( NULL, ctx->Texture.Proxy3D );
+   _mesa_free_texture_object( NULL, ctx->Texture.ProxyCubeMap );
 
    /* Free evaluator data */
    if (ctx->EvalMap.Map1Vertex3.Points)
@@ -1670,6 +1678,8 @@ _mesa_free_context_data( GLcontext *ctx )
    _mesa_free_colortable_data( &ctx->PostColorMatrixColorTable );
    _mesa_free_colortable_data( &ctx->Texture.Palette );
 
+   _math_matrix_dtr(&ctx->Viewport._WindowMap);
+
    _mesa_extensions_dtr(ctx);
 
    FREE(ctx->Exec);
index 76f4180..130a3fe 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: t_context.c,v 1.21 2001/07/12 22:09:21 keithw Exp $ */
+/* $Id: t_context.c,v 1.22 2001/07/19 15:54:35 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
@@ -139,6 +139,7 @@ _tnl_DestroyContext( GLcontext *ctx )
    _tnl_array_destroy( ctx );
    _tnl_imm_destroy( ctx );
    _tnl_destroy_pipeline( ctx );
+   _tnl_free_immediate( tnl->freed_immediate );
 
    FREE(tnl);
    ctx->swtnl_context = 0;