From 51271d2a0ba7583e8148603f755ce6a7d3f637a4 Mon Sep 17 00:00:00 2001 From: rlar Date: Sat, 4 Aug 2012 22:26:04 +0200 Subject: [PATCH] cp_oddcomm(), plug a memory leak --- src/frontend/cpitf.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/frontend/cpitf.c b/src/frontend/cpitf.c index 146d53194..5ee4d467c 100644 --- a/src/frontend/cpitf.c +++ b/src/frontend/cpitf.c @@ -360,9 +360,10 @@ bool cp_oddcomm(char *s, wordlist *wl) { FILE *fp; - char buf[BSIZE_SP]; if ((fp = inp_pathopen(s, "r")) != NULL) { + char buf[BSIZE_SP]; + wordlist *setarg; (void) fclose(fp); (void) sprintf(buf, "argc = %d argv = ( ", wl_length(wl)); while (wl) { @@ -371,7 +372,9 @@ cp_oddcomm(char *s, wordlist *wl) wl = wl->wl_next; } (void) strcat(buf, ")"); - com_set(cp_lexer(buf)); + setarg = cp_lexer(buf); + com_set(setarg); + wl_free(setarg); inp_source(s); cp_remvar("argc"); cp_remvar("argv");