aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2024-05-13 10:18:09 +0200
committerJunio C Hamano <gitster@pobox.com>2024-05-13 17:02:38 -0700
commitc22d75b02784baa1713e0c007fcd0cb675dd9f43 (patch)
tree5e1d22a6b01c9824f5473bc8d900c471c068097b
parente0cf3d8f8bc0480e67ac83502c10d6e6c38e1e11 (diff)
downloadgit-c22d75b02784baa1713e0c007fcd0cb675dd9f43.tar.xz
reftable/writer: improve error when passed an invalid block size
The reftable format only supports block sizes up to 16MB. When the writer is being passed a value bigger than that it simply calls abort(3P), which isn't all that helpful due to the lack of a proper error message. Improve this by calling `BUG()` instead. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--reftable/writer.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/reftable/writer.c b/reftable/writer.c
index a043025b01..45b3e9ce1f 100644
--- a/reftable/writer.c
+++ b/reftable/writer.c
@@ -128,10 +128,8 @@ reftable_new_writer(ssize_t (*writer_func)(void *, const void *, size_t),
if (_opts)
opts = *_opts;
options_set_defaults(&opts);
- if (opts.block_size >= (1 << 24)) {
- /* TODO - error return? */
- abort();
- }
+ if (opts.block_size >= (1 << 24))
+ BUG("configured block size exceeds 16MB");
strbuf_init(&wp->block_writer_data.last_key, 0);
strbuf_init(&wp->last_key, 0);