From: mmj Date: Tue, 9 Nov 2004 08:40:48 +0000 (+1100) Subject: Add one free() and do a little fd cleanup X-Git-Tag: RELEASE_1_1_0~47 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3d2cb47f02b7fe7cb134ce81c6718316cc267408;p=thirdparty%2Fmlmmj.git Add one free() and do a little fd cleanup --- diff --git a/src/gethdrline.c b/src/gethdrline.c index e77c5f6d..819c4aac 100644 --- a/src/gethdrline.c +++ b/src/gethdrline.c @@ -55,6 +55,7 @@ char *gethdrline(int fd) } else { tmp = retstr; retstr = concatstr(3, retstr, line, nextline); + myfree(line); myfree(tmp); return retstr; diff --git a/src/mlmmj-process.c b/src/mlmmj-process.c index 589ebc45..a79b2743 100644 --- a/src/mlmmj-process.c +++ b/src/mlmmj-process.c @@ -92,14 +92,15 @@ void newmoderated(const char *listdir, const char *mailfilename, if((moderatorsfd = open(moderatorsfilename, O_RDONLY)) < 0) { log_error(LOG_ARGS, "Could not open '%s'", moderatorsfilename); myfree(moderatorsfilename); - close(queuefd); + close(moderatorfd); exit(EXIT_FAILURE); } myfree(moderatorsfilename); if((mailfd = open(mailfilename, O_RDONLY)) < 0) { log_error(LOG_ARGS, "Could not open '%s'", mailfilename); - close(queuefd); + close(moderatorfd); + close(moderatorsfd); exit(EXIT_FAILURE); } @@ -117,6 +118,9 @@ void newmoderated(const char *listdir, const char *mailfilename, if(queuefd < 0) { log_error(LOG_ARGS, "Could not open '%s'", queuefilename); myfree(queuefilename); + close(moderatorfd); + close(moderatorsfd); + close(mailfd); exit(EXIT_FAILURE); } @@ -484,9 +488,9 @@ int main(int argc, char **argv) close(rawmailfd); close(donemailfd); - if(hdrfd) + if(hdrfd >= 0) close(hdrfd); - if(footfd) + if(footfd >= 0) close(footfd); if(readhdrs[0].token) { /* From: addresses */