svn commit: r203459 - head/sbin/dump

Xin LI delphij at FreeBSD.org
Wed Feb 3 23:56:12 UTC 2010


Author: delphij
Date: Wed Feb  3 23:56:12 2010
New Revision: 203459
URL: http://svn.freebsd.org/changeset/base/203459

Log:
  Plug two memory leaks in error case.
  
  MFC after:	1 month

Modified:
  head/sbin/dump/itime.c
  head/sbin/dump/main.c

Modified: head/sbin/dump/itime.c
==============================================================================
--- head/sbin/dump/itime.c	Wed Feb  3 23:51:00 2010	(r203458)
+++ head/sbin/dump/itime.c	Wed Feb  3 23:56:12 2010	(r203459)
@@ -106,8 +106,10 @@ readdumptimes(FILE *df)
 
 	for (;;) {
 		dtwalk = (struct dumptime *)calloc(1, sizeof (struct dumptime));
-		if (getrecord(df, &(dtwalk->dt_value)) < 0)
+		if (getrecord(df, &(dtwalk->dt_value)) < 0) {
+			free(dtwalk);
 			break;
+		}
 		nddates++;
 		SLIST_INSERT_HEAD(&dthead, dtwalk, dt_list);
 	}

Modified: head/sbin/dump/main.c
==============================================================================
--- head/sbin/dump/main.c	Wed Feb  3 23:51:00 2010	(r203458)
+++ head/sbin/dump/main.c	Wed Feb  3 23:56:12 2010	(r203459)
@@ -767,7 +767,8 @@ obsolete(int *argcp, char **argvp[])
 	if (flags) {
 		*p = '\0';
 		*nargv++ = flagsp;
-	}
+	} else
+		free(flagsp);
 
 	/* Copy remaining arguments. */
 	while ((*nargv++ = *argv++));


More information about the svn-src-all mailing list