reftable: fix resource warning

This would trigger in the unlikely event that we are compacting, and
the next available file handle is 0.

Signed-off-by: Han-Wen Nienhuys <hanwen@google.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Han-Wen Nienhuys 2022-01-20 15:12:05 +00:00 committed by Junio C Hamano
parent f5f6a6cd47
commit b20aab5017
1 changed files with 5 additions and 5 deletions

View File

@ -877,7 +877,7 @@ static int stack_compact_range(struct reftable_stack *st, int first, int last,
struct strbuf new_table_path = STRBUF_INIT; struct strbuf new_table_path = STRBUF_INIT;
int err = 0; int err = 0;
int have_lock = 0; int have_lock = 0;
int lock_file_fd = 0; int lock_file_fd = -1;
int compact_count = last - first + 1; int compact_count = last - first + 1;
char **listp = NULL; char **listp = NULL;
char **delete_on_success = char **delete_on_success =
@ -911,7 +911,7 @@ static int stack_compact_range(struct reftable_stack *st, int first, int last,
} }
/* Don't want to write to the lock for now. */ /* Don't want to write to the lock for now. */
close(lock_file_fd); close(lock_file_fd);
lock_file_fd = 0; lock_file_fd = -1;


have_lock = 1; have_lock = 1;
err = stack_uptodate(st); err = stack_uptodate(st);
@ -1013,7 +1013,7 @@ static int stack_compact_range(struct reftable_stack *st, int first, int last,
goto done; goto done;
} }
err = close(lock_file_fd); err = close(lock_file_fd);
lock_file_fd = 0; lock_file_fd = -1;
if (err < 0) { if (err < 0) {
err = REFTABLE_IO_ERROR; err = REFTABLE_IO_ERROR;
unlink(new_table_path.buf); unlink(new_table_path.buf);
@ -1050,9 +1050,9 @@ done:
listp++; listp++;
} }
free_names(subtable_locks); free_names(subtable_locks);
if (lock_file_fd > 0) { if (lock_file_fd >= 0) {
close(lock_file_fd); close(lock_file_fd);
lock_file_fd = 0; lock_file_fd = -1;
} }
if (have_lock) { if (have_lock) {
unlink(lock_file_name.buf); unlink(lock_file_name.buf);