diff options
author | Thomas Rast <tr@thomasrast.ch> | 2013-12-01 21:41:55 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-12-02 12:46:01 -0800 |
commit | cde0a0576c8950599ef11184bc35aea648f7e717 (patch) | |
tree | 53c952281c26148e9ff58d738d7ed01e293567a6 | |
parent | e9e03a77994f4bf030760e2644f718776de0eb39 (diff) | |
download | git-cde0a0576c8950599ef11184bc35aea648f7e717.tar.gz |
commit-slab: sizeof() the right type in xrealloctr/commit-slab-cleanup
When allocating the slab, the code accidentally computed the array
size from s->slab (an elemtype**). The slab is an array of elemtype*,
however, so we should take the size of *s->slab.
Noticed-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Thomas Rast <tr@thomasrast.ch>
Reviewed-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | commit-slab.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/commit-slab.h b/commit-slab.h index d068e2d531..cc114b53b0 100644 --- a/commit-slab.h +++ b/commit-slab.h @@ -91,7 +91,7 @@ static MAYBE_UNUSED elemtype *slabname## _at(struct slabname *s, \ if (s->slab_count <= nth_slab) { \ int i; \ s->slab = xrealloc(s->slab, \ - (nth_slab + 1) * sizeof(s->slab)); \ + (nth_slab + 1) * sizeof(*s->slab)); \ stat_ ##slabname## realloc++; \ for (i = s->slab_count; i <= nth_slab; i++) \ s->slab[i] = NULL; \ |