refs.c: release file descriptor on error return
Signed-off-by: Brandon Casey <drafnel@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Brandon Casey committed
Jul 16, 2009 at 16:25 UTC
9d33f7c22fda81f7be8a7aa1576e6d399d3b45ec
1 file changed
+3
-1
refs.c
+3
-1
@@ -1525,8 +1525,10 @@ int for_each_recent_reflog_ent(const char *ref, each_reflog_ent_fn fn, long ofs,
1525
if (fstat(fileno(logfp), &statbuf) ||
1526
statbuf.st_size < ofs ||
1527
fseek(logfp, -ofs, SEEK_END) ||
1528
- fgets(buf, sizeof(buf), logfp))
1528
+ fgets(buf, sizeof(buf), logfp)) {
1529
+ fclose(logfp);
1530
return -1;
1531
+ }
1532
}
1533
1534
while (fgets(buf, sizeof(buf), logfp)) {