pack-bitmap: introduce bitmap_writer_free()

Now that there is clearer memory ownership around the bitmap_writer
structure, introduce a bitmap_writer_free() function that callers may
use to free any memory associated with their instance of the
bitmap_writer structure.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Taylor Blau
2024-05-14 15:57:06 -04:00
committed by Junio C Hamano
parent f25e1f2a4d
commit 85f360fee5
4 changed files with 27 additions and 1 deletions

View File

@ -1245,7 +1245,6 @@ static void write_pack_file(void)
uint32_t nr_remaining = nr_result;
time_t last_mtime = 0;
struct object_entry **write_order;
struct bitmap_writer bitmap_writer;
if (progress > pack_to_stdout)
progress_state = start_progress(_("Writing objects"), nr_result);
@ -1315,6 +1314,7 @@ static void write_pack_file(void)
if (!pack_to_stdout) {
struct stat st;
struct strbuf tmpname = STRBUF_INIT;
struct bitmap_writer bitmap_writer;
char *idx_tmp_name = NULL;
/*
@ -1370,6 +1370,7 @@ static void write_pack_file(void)
bitmap_writer_finish(&bitmap_writer,
written_list, nr_written,
tmpname.buf, write_bitmap_options);
bitmap_writer_free(&bitmap_writer);
write_bitmap_index = 0;
strbuf_setlen(&tmpname, tmpname_len);
}