]> git.ipfire.org Git - thirdparty/git.git/commit
reftable/basics: fix OOB read on binary search of empty range
authorPatrick Steinhardt <ps@pks.im>
Mon, 29 Jun 2026 09:02:16 +0000 (11:02 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 29 Jun 2026 15:13:36 +0000 (08:13 -0700)
commit5b6022ad4aa693a94888aa0c398e52508c82f773
treef5a2e9654892a0db361740831497dd48d3fc0cf6
parent7020a1037144fb71e52457cd779658c1f8b7cb3c
reftable/basics: fix OOB read on binary search of empty range

`binsearch()` performs a binary search over a range of `sz` elements by
repeatedly calling the comparison function with indices into that range.
When the range is empty though, there is no valid index to call the
comparison function with. We still end up executing the comparison
function though with an index of 0, which of course will cause an
out-of-bounds read.

Return early when the range is empty.

Signed-off-by: Patrick Steinhardt <ps@pks.im>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
reftable/basics.c
t/unit-tests/u-reftable-basics.c