summaryrefslogtreecommitdiffstats
path: root/sbin/init/init.c
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>1999-07-23 08:28:46 +0000
committerru <ru@FreeBSD.org>1999-07-23 08:28:46 +0000
commit78cfb5805ba19466feb96958535ca70e8f7c4f5c (patch)
treeb90150c2da1d2c92847bfbb3cbe1855c60076f08 /sbin/init/init.c
parent2455d1c335e089d1fdcc0f62570b256af69412c9 (diff)
downloadFreeBSD-src-78cfb5805ba19466feb96958535ca70e8f7c4f5c.zip
FreeBSD-src-78cfb5805ba19466feb96958535ca70e8f7c4f5c.tar.gz
Fix a non-critical memory leak.
PR: 12769 Submitted by: Peter Jeremy <peter.jeremy@alcatel.com.au>
Diffstat (limited to 'sbin/init/init.c')
-rw-r--r--sbin/init/init.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sbin/init/init.c b/sbin/init/init.c
index bc3717a..dc90e6d 100644
--- a/sbin/init/init.c
+++ b/sbin/init/init.c
@@ -45,7 +45,7 @@ static const char copyright[] =
static char sccsid[] = "@(#)init.c 8.1 (Berkeley) 7/15/93";
#endif
static const char rcsid[] =
- "$Id: init.c,v 1.32 1999/06/16 20:01:19 ru Exp $";
+ "$Id: init.c,v 1.33 1999/06/18 09:08:09 ru Exp $";
#endif /* not lint */
#include <sys/param.h>
@@ -935,8 +935,10 @@ construct_argv(command)
register char **argv = (char **) malloc(((strlen(command) + 1) / 2 + 1)
* sizeof (char *));
- if ((argv[argc++] = strk(command)) == 0)
- return 0;
+ if ((argv[argc++] = strk(command)) == 0) {
+ free(argv);
+ return (NULL);
+ }
while ((argv[argc++] = strk((char *) 0)) != NULL)
continue;
return argv;
@@ -1044,7 +1046,7 @@ setupargv(sp, typ)
return (0);
}
if (sp->se_window) {
- free(sp->se_window);
+ free(sp->se_window);
free(sp->se_window_argv_space);
free(sp->se_window_argv);
}
OpenPOWER on IntegriCloud