]> git.ipfire.org Git - thirdparty/git.git/commit
refs: fix segfault when aborting empty transaction
authorPatrick Steinhardt <ps@pks.im>
Mon, 30 Mar 2020 13:46:13 +0000 (15:46 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 30 Mar 2020 17:34:11 +0000 (10:34 -0700)
commitedc30691e5729435177e4fdccb8c13c3948e3c5a
tree6e12dabd71cf61b62d94ca51619940ce837be913
parent3bab5d56259722843359702bc27111475437ad2a
refs: fix segfault when aborting empty transaction

When cleaning up a transaction that has no updates queued, then the
transaction's backend data will not have been allocated. We correctly
handle this for the packed backend, where the cleanup function checks
whether the backend data has been allocated at all -- if not, then there
is nothing to clean up. For the files backend we do not check this and
as a result will hit a segfault due to dereferencing a `NULL` pointer
when cleaning up such a transaction.

Fix the issue by checking whether `backend_data` is set in the files
backend, too.

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