[PATCH v3 04/11] reftable/writer: improve error when passed an invalid block size
- From
Patrick Steinhardt <ps@pks.im>
- Date
- May 13, 2024, 08:18 UTC
- Message-ID
- <8ec26646f2653aa77076ca6498d7618e7c7dffa9.1715587849.git.ps@pks.im>
- In-Reply-To
- <cover.1715587849.git.ps@pks.im>
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> --- reftable/writer.c | 6 ++---- 1 file 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);
-- 2.45.GIT