]> granicus.if.org Git - postgresql/commitdiff
Fix double frees in ecpg.
authorMichael Meskes <meskes@postgresql.org>
Tue, 13 Mar 2018 23:47:49 +0000 (00:47 +0100)
committerMichael Meskes <meskes@postgresql.org>
Tue, 13 Mar 2018 23:52:45 +0000 (00:52 +0100)
Patch by Patrick Krecker <patrick@judicata.com>

src/interfaces/ecpg/preproc/ecpg.c

index d4907be32be744bc09c97077e917ff1833e0c14e..a838fc6cb70d3826f5fbe2dce6661a10e4f19127 100644 (file)
@@ -323,6 +323,7 @@ main(int argc, char *const argv[])
                                                fprintf(stderr, _("%s: could not open file \"%s\": %s\n"),
                                                                progname, output_filename, strerror(errno));
                                                free(output_filename);
+                                               output_filename = NULL;
                                                free(input_filename);
                                                continue;
                                        }
@@ -470,8 +471,10 @@ main(int argc, char *const argv[])
                                }
                        }
 
-                       if (output_filename && out_option == 0)
+                       if (output_filename && out_option == 0) {
                                free(output_filename);
+                               output_filename = NULL;
+                       }
 
                        free(input_filename);
                }