fix mem leak
authorBradley Bell <btb@icculus.org>
Sat, 22 Mar 2003 02:26:10 +0000 (02:26 +0000)
committerBradley Bell <btb@icculus.org>
Sat, 22 Mar 2003 02:26:10 +0000 (02:26 +0000)
ChangeLog
main/bm.c

index 8e65c98..c771a13 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,9 @@
 2003-03-21  Martin Schaffner <maschaffner@gmx.ch>
 
-       * fix bug: when opening d1 level 1 with oem data files, both d1
-       and d2 oem briefing where showed
+       * main/bm.c: fix mem leak
+
+       * main/gameseq.c: fix bug: when opening d1 level 1 with oem data
+       files, both d1 and d2 oem briefing where showed
 
        * main/inferno.c, main/movie.c: Change the default movie
        resolution to "high", implement the option -lowresmovies
index 5fa8869..a20eb15 100644 (file)
--- a/main/bm.c
+++ b/main/bm.c
@@ -1,4 +1,4 @@
-/* $Id: bm.c,v 1.22 2003-03-19 22:44:15 btb Exp $ */
+/* $Id: bm.c,v 1.23 2003-03-22 02:26:10 btb Exp $ */
 /*
 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
@@ -380,6 +380,8 @@ void bm_read_all(CFILE * fp)
 #define D1_WEAPON_INFO_SIZE 115
 
 #define D1_LAST_STATIC_TMAP_NUM 324
+
+// store the Textures[] array as read from the descent 2 pig.
 short *d2_Textures_backup = NULL;
 
 void undo_bm_read_all_d1() {
@@ -399,6 +401,8 @@ void bm_read_all_d1(CFILE * fp)
 {
        int i;
 
+       atexit(undo_bm_read_all_d1);
+
        /*NumTextures = */ cfile_read_int(fp);
        //bitmap_index_read_n(Textures, D1_MAX_TEXTURES, fp );
        //for (i = 0; i < D1_MAX_TEXTURES; i++)