]> git.wh0rd.org - dump.git/commitdiff
Fixed a memory leak in traverse.c (dump growed very big when dumping a big filesystem).
authorStelian Pop <stelian@popies.net>
Sun, 5 Dec 1999 18:21:21 +0000 (18:21 +0000)
committerStelian Pop <stelian@popies.net>
Sun, 5 Dec 1999 18:21:21 +0000 (18:21 +0000)
CHANGES
THANKS
dump/traverse.c

diff --git a/CHANGES b/CHANGES
index 662c5bb73bb2f0eedeeb387339851796eee239b8..73ba57abb29fe157d73660ca927ba1b1ba0f6d08 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,4 @@
-$Id: CHANGES,v 1.22 1999/11/22 21:39:37 tiniou Exp $
+$Id: CHANGES,v 1.23 1999/12/05 18:21:21 tiniou Exp $
 
 Changes between versions 0.4b10 and 0.4b11 (released ????????????????)
 ======================================================================
 
 Changes between versions 0.4b10 and 0.4b11 (released ????????????????)
 ======================================================================
@@ -18,6 +18,10 @@ Changes between versions 0.4b10 and 0.4b11 (released ????????????????)
        the 'M' flag, restore automatically selects the right file without
        asking to enter a new tape each time.
 
        the 'M' flag, restore automatically selects the right file without
        asking to enter a new tape each time.
 
+4.     Fixed a memory leak which was causing dump to grow very big
+       (270MB when dumping a 10GB filesystem...). Thanks to Zaphod 
+       Beeblebrox <zaphod@netrider.org.au> for reporting the bug.
+
 Changes between versions 0.4b9 and 0.4b10 (released November 21, 1999)
 ======================================================================
 
 Changes between versions 0.4b9 and 0.4b10 (released November 21, 1999)
 ======================================================================
 
diff --git a/THANKS b/THANKS
index 87d85e2918d2d67ce89243cf3ab9d72345959720..c5ad14653b0747f3df41ace68158d0a1a087b3f8 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -1,4 +1,4 @@
-$Id: THANKS,v 1.11 1999/11/22 19:08:47 tiniou Exp $
+$Id: THANKS,v 1.12 1999/12/05 18:21:21 tiniou Exp $
 
 Dump and restore were written by the people of the CSRG at the University
 of California, Berkeley.
 
 Dump and restore were written by the people of the CSRG at the University
 of California, Berkeley.
@@ -22,6 +22,7 @@ Thanks to people who reported problems with the port, sent patches, and
 suggested various improvements.
 Here is a partial list of them (if I have forgotten someone, please complain):
 
 suggested various improvements.
 Here is a partial list of them (if I have forgotten someone, please complain):
 
+Zaphod Beeblebrox      zaphod@netrider.org.au
 Stephen Carr           sgcarr@civeng.adelaide.edu.au
 Rob Cermak             cermak@ahab.rutgers.edu
 Abhijit Dasgupta       abhijit@ans.net
 Stephen Carr           sgcarr@civeng.adelaide.edu.au
 Rob Cermak             cermak@ahab.rutgers.edu
 Abhijit Dasgupta       abhijit@ans.net
index 7d6a38f02f8dd7fa1db2cc35d56d0558f3401c9c..a95a21e1be07da8a6d1244db0c89822cbfe2a896 100644 (file)
@@ -40,7 +40,7 @@
 
 #ifndef lint
 static const char rcsid[] =
 
 #ifndef lint
 static const char rcsid[] =
-       "$Id: traverse.c,v 1.10 1999/11/21 02:24:47 tiniou Exp $";
+       "$Id: traverse.c,v 1.11 1999/12/05 18:21:23 tiniou Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -759,6 +759,7 @@ dumpino(struct dinode *dp, ino_t ino)
        if (bc.cnt > 0) {
                blksout (bc.buf, bc.cnt, bc.ino);
        }
        if (bc.cnt > 0) {
                blksout (bc.buf, bc.cnt, bc.ino);
        }
+       free(bc.buf);
 #else
        for (ind_level = 0; ind_level < NIADDR; ind_level++) {
                dmpindir(ino, dp->di_ib[ind_level], ind_level, &size);
 #else
        for (ind_level = 0; ind_level < NIADDR; ind_level++) {
                dmpindir(ino, dp->di_ib[ind_level], ind_level, &size);