]> git.ipfire.org Git - thirdparty/git.git/commit - pack-revindex.c
pack-revindex.c: don't close unopened file descriptors
authorTaylor Blau <me@ttaylorr.com>
Fri, 26 Feb 2021 16:31:02 +0000 (11:31 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 26 Feb 2021 22:42:27 +0000 (14:42 -0800)
commit66f52fa26b4facbf79e3f74d8bc95f8ac8535c50
treeeb7d524c705994d57fc3e63676155390ecf85d5f
parent6885cd7dc573b1750b8d895820b8b2f56285f070
pack-revindex.c: don't close unopened file descriptors

When opening a reverse index, load_revindex_from_disk() jumps to the
'cleanup' label in case something goes wrong: the reverse index had the
wrong size, an unrecognized version, or similar.

It also jumps to this label when the reverse index couldn't be opened in
the first place, which will cause an error with the unguarded close()
call in the label.

Guard this call with "if (fd >= 0)" to make sure that we have a valid
file descriptor to close before attempting to close it.

Reported-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
pack-revindex.c