You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by gb...@apache.org on 2018/10/02 17:40:44 UTC

svn commit: r1842645 - in /spamassassin: branches/3.4/spamc/spamc.c trunk/spamc/spamc.c

Author: gbechis
Date: Tue Oct  2 17:40:43 2018
New Revision: 1842645

URL: http://svn.apache.org/viewvc?rev=1842645&view=rev
Log:
fix spamc file leak, bz #7638

Modified:
    spamassassin/branches/3.4/spamc/spamc.c
    spamassassin/trunk/spamc/spamc.c

Modified: spamassassin/branches/3.4/spamc/spamc.c
URL: http://svn.apache.org/viewvc/spamassassin/branches/3.4/spamc/spamc.c?rev=1842645&r1=1842644&r2=1842645&view=diff
==============================================================================
--- spamassassin/branches/3.4/spamc/spamc.c (original)
+++ spamassassin/branches/3.4/spamc/spamc.c Tue Oct  2 17:40:43 2018
@@ -616,6 +616,7 @@ combine_args(char *config_file, int argc
 	        fprintf(stderr,"Exceeded max line size (%d) in %s\n",
                         CONFIG_MAX_LINE_SIZE-2, config_file);
 	    }
+	    fclose(config);
 	    return EX_CONFIG;
 	}
 
@@ -629,6 +630,7 @@ combine_args(char *config_file, int argc
             if (*combo_argc >= COMBO_ARGV_SIZE) {
 	        fprintf(stderr,"Exceeded max number of arguments (%d) in %s\n",
 	                COMBO_ARGV_SIZE, config_file);
+		fclose(config);
 	        return EX_CONFIG;
             }
             combo_argv[*combo_argc] = strdup(tok);

Modified: spamassassin/trunk/spamc/spamc.c
URL: http://svn.apache.org/viewvc/spamassassin/trunk/spamc/spamc.c?rev=1842645&r1=1842644&r2=1842645&view=diff
==============================================================================
--- spamassassin/trunk/spamc/spamc.c (original)
+++ spamassassin/trunk/spamc/spamc.c Tue Oct  2 17:40:43 2018
@@ -616,6 +616,7 @@ combine_args(char *config_file, int argc
 	        fprintf(stderr,"Exceeded max line size (%d) in %s\n",
                         CONFIG_MAX_LINE_SIZE-2, config_file);
 	    }
+	    fclose(config);
 	    return EX_CONFIG;
 	}
 
@@ -629,6 +630,7 @@ combine_args(char *config_file, int argc
             if (*combo_argc >= COMBO_ARGV_SIZE) {
 	        fprintf(stderr,"Exceeded max number of arguments (%d) in %s\n",
 	                COMBO_ARGV_SIZE, config_file);
+		fclose(config);
 	        return EX_CONFIG;
             }
             combo_argv[*combo_argc] = strdup(tok);