reftable: release name on reftable_reader_new() error
If block_source_read_block() or parse_footer() fail, we leak the "name" member of struct reftable_reader in reftable_reader_new(). Release it. Reported by: H Z <shiyuyuranzh@gmail.com> Helped-by: Jeff King <peff@peff.net> Signed-off-by: René Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
René Scharfe committed
Mar 4, 2025 at 17:11 UTC
bad79103998cd329584e844a315e85c3e1ac3839
1 file changed
+2
reftable/reader.c
+2
index 3f2e4b2800..24bae50ac2 100644
--- a/reftable/reader.c
+++ b/reftable/reader.c
@@ -666,6 +666,8 @@ done:
reftable_block_done(&footer);
reftable_block_done(&header);
if (err) {
+ if (r)
+ reftable_free(r->name);
reftable_free(r);
block_source_close(source);
}