]> git.ipfire.org Git - thirdparty/git.git/commit
reftable/basics: fix segfault when growing `names` array fails
authorPatrick Steinhardt <ps@pks.im>
Fri, 4 Oct 2024 04:58:53 +0000 (06:58 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 4 Oct 2024 14:59:31 +0000 (07:59 -0700)
commit2179b5c831f6bc286acda15c7c7f4a573291ee5c
tree7fe65ef52df45cb578e2999aacf9651d42bb6b4a
parent35730302e995337766805299fa1128c1b9d8988c
reftable/basics: fix segfault when growing `names` array fails

When growing the `names` array fails we would end up with a `NULL`
pointer. This causes two problems:

  - We would run into a segfault because we try to free names that we
    have assigned to the array already.

  - We lose track of the old array and cannot free its contents.

Fix this issue by using a temporary variable. Like this we do not
clobber the old array that we tried to reallocate, which will remain
valid when a call to realloc(3P) fails.

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