From dcfe69ec6454cecae1d6c25bbaf33e26a531b3ff Mon Sep 17 00:00:00 2001 From: David Vossel Date: Thu, 18 Jun 2009 16:37:42 +0000 Subject: fixes some memory leaks and redundant conditions (closes issue #15269) Reported by: contactmayankjain Patches: patch.txt uploaded by contactmayankjain (license 740) memory_leak_stuff.trunk.diff uploaded by dvossel (license 671) Tested by: contactmayankjain, dvossel git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@201678 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- utils/ael_main.c | 3 +-- utils/conf2ael.c | 3 ++- utils/extconf.c | 3 +-- utils/stereorize.c | 3 +++ 4 files changed, 7 insertions(+), 5 deletions(-) (limited to 'utils') diff --git a/utils/ael_main.c b/utils/ael_main.c index ba7970955..9249cd77b 100644 --- a/utils/ael_main.c +++ b/utils/ael_main.c @@ -299,8 +299,7 @@ int ast_add_extension2(struct ast_context *con, } /* since add_extension2 is responsible for the malloc'd data stuff */ - if( data ) - free(data); + free(data); return 0; } diff --git a/utils/conf2ael.c b/utils/conf2ael.c index f08020686..48a18392c 100644 --- a/utils/conf2ael.c +++ b/utils/conf2ael.c @@ -471,7 +471,7 @@ int main(int argc, char **argv) if (mon) { *mon++ = 0; /* now all 4 fields are set; what do we do? */ - pvalIncludesAddIncludeWithTimeConstraints(incl, all, hr, dow, dom, mon); + pvalIncludesAddIncludeWithTimeConstraints(incl, strdup(all), strdup(hr), strdup(dow), strdup(dom), strdup(mon)); /* the original data is always best to keep (no 2-min rounding) */ } else { ast_log(LOG_ERROR,"No month spec attached to include!\n"); @@ -483,6 +483,7 @@ int main(int argc, char **argv) ast_log(LOG_ERROR,"No day of week spec attached to include!\n"); } } + free(all); } tmpi = tmpi->next; } diff --git a/utils/extconf.c b/utils/extconf.c index 11d4de60a..08465c408 100644 --- a/utils/extconf.c +++ b/utils/extconf.c @@ -2993,8 +2993,7 @@ static struct ast_var_t *ast_var_assign(const char *name, const char *value) static void ast_var_delete(struct ast_var_t *var) { - if (var) - free(var); + free(var); } diff --git a/utils/stereorize.c b/utils/stereorize.c index c8428320d..31f1b1fbe 100644 --- a/utils/stereorize.c +++ b/utils/stereorize.c @@ -156,4 +156,7 @@ int main( int argcount, char *args[]) } } /* That was an endless loop. This point is never reached. */ + free(leftsample); + free(rightsample); + free(stereosample); } -- cgit v1.2.3