aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2024-04-08 14:16:40 +0200
committerJunio C Hamano <gitster@pobox.com>2024-04-15 10:36:09 -0700
commitb371221a607fdb4ea781733e9449e3835be12c91 (patch)
treec9150cd098bea21f6268a2c6f6dc86257e627f31
parentaac8c03cc45e047b1b721a61580c920995bf43a3 (diff)
downloadgit-b371221a607fdb4ea781733e9449e3835be12c91.tar.gz
reftable/block: introduce `block_reader_release()`
Introduce a new function `block_reader_release()` that releases resources acquired by the block reader. This function will be extended in a subsequent commit. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--reftable/block.c5
-rw-r--r--reftable/block.h2
-rw-r--r--reftable/reader.c2
3 files changed, 8 insertions, 1 deletions
diff --git a/reftable/block.c b/reftable/block.c
index e65453e11b..fe836c21e5 100644
--- a/reftable/block.c
+++ b/reftable/block.c
@@ -256,6 +256,11 @@ done:
return err;
}
+void block_reader_release(struct block_reader *br)
+{
+ reftable_block_done(&br->block);
+}
+
uint8_t block_reader_type(struct block_reader *r)
{
return r->block.data[r->header_off];
diff --git a/reftable/block.h b/reftable/block.h
index d73ed73549..601a1e0e89 100644
--- a/reftable/block.h
+++ b/reftable/block.h
@@ -81,6 +81,8 @@ int block_reader_init(struct block_reader *br, struct reftable_block *bl,
uint32_t header_off, uint32_t table_block_size,
int hash_size);
+void block_reader_release(struct block_reader *br);
+
/* Returns the block type (eg. 'r' for refs) */
uint8_t block_reader_type(struct block_reader *r);
diff --git a/reftable/reader.c b/reftable/reader.c
index f70efa2b7c..f925570bf3 100644
--- a/reftable/reader.c
+++ b/reftable/reader.c
@@ -253,7 +253,7 @@ static void table_iter_block_done(struct table_iter *ti)
if (!ti->bi.br) {
return;
}
- reftable_block_done(&ti->bi.br->block);
+ block_reader_release(ti->bi.br);
FREE_AND_NULL(ti->bi.br);
ti->bi.last_key.len = 0;