diff options
| author | Taylor Blau <me@ttaylorr.com> | 2023-07-12 19:37:38 -0400 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2023-07-14 09:32:03 -0700 |
| commit | c2b24ede229dbc6686e37c8cae1e169fc356049e (patch) | |
| tree | 0395b2b22fde30fded345cb5645c4bc2fe57dcf6 /commit-graph.c | |
| parent | midx.c: use `size_t`'s for fanout nr and alloc (diff) | |
| download | git-c2b24ede229dbc6686e37c8cae1e169fc356049e.tar.gz git-c2b24ede229dbc6686e37c8cae1e169fc356049e.zip | |
midx.c: prevent overflow in `nth_midxed_object_oid()`
In a similar spirit as previous commits, avoid overflow when looking up
an object's OID in a MIDX when its position is greater than
`2^32-1/m->hash_len`.
As usual, it is perfectly OK for a MIDX to have as many as 2^32-1
objects (since we use 32-bit fields to count the number of objects at
each fanout layer). But if we have more than `2^32-1/m->hash_len` number
of objects, we will incorrectly perform the computation using 32-bit
integers, overflowing the result.
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit-graph.c')
0 files changed, 0 insertions, 0 deletions
