free the NormalLengthPtr if non-null in _tnl_free_immediate()
authorBrian Paul <brian.paul@tungstengraphics.com>
Sat, 15 Dec 2001 00:49:00 +0000 (00:49 +0000)
committerBrian Paul <brian.paul@tungstengraphics.com>
Sat, 15 Dec 2001 00:49:00 +0000 (00:49 +0000)
src/mesa/tnl/t_imm_alloc.c

index ff9c902171a41325cba022f9fbab8880b7e5d736..a0708d5f28f7d5cb9b0372e4cd2ac81214970be9 100644 (file)
@@ -1,8 +1,8 @@
-/* $Id: t_imm_alloc.c,v 1.11 2001/12/14 02:51:44 brianp Exp $ */
+/* $Id: t_imm_alloc.c,v 1.12 2001/12/15 00:49:00 brianp Exp $ */
 
 /*
  * Mesa 3-D graphics library
- * Version:  3.5
+ * Version:  4.0.1
  *
  * Copyright (C) 1999-2001  Brian Paul   All Rights Reserved.
  *
@@ -34,7 +34,7 @@
 #include "t_imm_alloc.h"
 
 
-   static int id = 0;
+static int id = 0;  /* give each struct immediate a unique ID number */
 
 static struct immediate *real_alloc_immediate( GLcontext *ctx )
 {
@@ -62,6 +62,7 @@ static struct immediate *real_alloc_immediate( GLcontext *ctx )
    IM->CopyTexSize = 0;
    IM->CopyStart = IM->Start;
 
+
    /* TexCoord0 is special.
     */
    IM->TexCoord[0] = IM->TexCoord0;
@@ -129,6 +130,11 @@ void _tnl_free_immediate( struct immediate *IM )
 
    ASSERT(IM->ref_count == 0);
 
+   if (IM->NormalLengthPtr) {
+      ALIGN_FREE(IM->NormalLengthPtr);
+      IM->NormalLengthPtr = NULL;
+   }
+
    if (!tnl) {
       real_free_immediate( IM );
    }