mirror of
https://github.com/git/git.git
synced 2024-10-30 13:57:54 +01:00
commit: allocate array using object_id size
struct commit_graft aggregates an array of object_id's, which have size >= GIT_MAX_RAWSZ bytes. This change prevents memory allocation error when size of object_id is larger than GIT_SHA1_RAWSZ. Signed-off-by: Patryk Obara <patryk.obara@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
9a9340329a
commit
bc65d2262d
1 changed files with 2 additions and 1 deletions
3
commit.c
3
commit.c
|
@ -147,7 +147,8 @@ struct commit_graft *read_graft_line(struct strbuf *line)
|
|||
if ((line->len + 1) % entry_size)
|
||||
goto bad_graft_data;
|
||||
i = (line->len + 1) / entry_size - 1;
|
||||
graft = xmalloc(st_add(sizeof(*graft), st_mult(GIT_SHA1_RAWSZ, i)));
|
||||
graft = xmalloc(st_add(sizeof(*graft),
|
||||
st_mult(sizeof(struct object_id), i)));
|
||||
graft->nr_parent = i;
|
||||
if (get_oid_hex(line->buf, &graft->oid))
|
||||
goto bad_graft_data;
|
||||
|
|
Loading…
Reference in a new issue