pg_restore: Fix memory and file descriptor leak with directory format
authorPeter Eisentraut <peter_e@gmx.net>
Fri, 16 Mar 2012 17:53:31 +0000 (19:53 +0200)
committerPeter Eisentraut <peter_e@gmx.net>
Fri, 16 Mar 2012 18:34:59 +0000 (20:34 +0200)
found by Coverity

src/bin/pg_dump/pg_backup_directory.c

index df95411cfd976a191b4c8eed1702ddc2ce771fd9..4b59516fe46d425e5c1fa8158feb8f05e30f73b0 100644 (file)
@@ -356,6 +356,9 @@ _PrintFileData(ArchiveHandle *AH, char *filename, RestoreOptions *ropt)
                ahwrite(buf, 1, cnt, AH);
 
        free(buf);
+       if (cfclose(cfp) != 0)
+               die_horribly(AH, modulename, "could not close data file: %s\n",
+                                        strerror(errno));
 }
 
 /*