aboutsummaryrefslogtreecommitdiffstats
path: root/reftable
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2024-02-01 08:52:04 +0100
committerJunio C Hamano <gitster@pobox.com>2024-02-01 11:11:32 -0800
commitb66e006ff534c72c70132105fff06601aa60a625 (patch)
tree96d07068448bd00d3743b03828e910831429a283 /reftable
parent9ebb2d7b08c9f17a846b7c90082c9d15b9f6c9d2 (diff)
downloadgit-b66e006ff534c72c70132105fff06601aa60a625.tar.gz
reftable/writer: simplify writing index records
When finishing the current section some index records might be written for the section to the table. The logic that adds these records to the writer duplicates what we already have in `writer_add_record()`, making this more complicated than it really has to be. Simplify the code by using `writer_add_record()` instead. While at it, drop the unneeded braces around a loop to make the code conform to our code style better. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'reftable')
-rw-r--r--reftable/writer.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/reftable/writer.c b/reftable/writer.c
index 5a0b87b406..b5bcce0292 100644
--- a/reftable/writer.c
+++ b/reftable/writer.c
@@ -412,26 +412,14 @@ static int writer_finish_section(struct reftable_writer *w)
.idx = idx[i],
},
};
- if (block_writer_add(w->block_writer, &rec) == 0) {
- continue;
- }
- err = writer_flush_block(w);
+ err = writer_add_record(w, &rec);
if (err < 0)
return err;
-
- writer_reinit_block_writer(w, BLOCK_TYPE_INDEX);
-
- err = block_writer_add(w->block_writer, &rec);
- if (err != 0) {
- /* write into fresh block should always succeed
- */
- abort();
- }
}
- for (i = 0; i < idx_len; i++) {
+
+ for (i = 0; i < idx_len; i++)
strbuf_release(&idx[i].last_key);
- }
reftable_free(idx);
}