From: Patrick Steinhardt Date: Thu, 6 Jun 2024 05:29:25 +0000 (+0200) Subject: refs/files: fix NULL pointer deref when releasing ref store X-Git-Tag: v2.46.0-rc0~55^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b3e098d6e77db87946c50c3517fbdeffe9168ca9;p=thirdparty%2Fgit.git refs/files: fix NULL pointer deref when releasing ref store The `free_ref_cache()` function is not `NULL` safe and will thus segfault when being passed such a pointer. This can easily happen when trying to release a partially initialized "files" ref store. Fix this. Signed-off-by: Patrick Steinhardt Signed-off-by: Junio C Hamano --- diff --git a/refs/ref-cache.c b/refs/ref-cache.c index b6c53fc8ed..4ce519bbc8 100644 --- a/refs/ref-cache.c +++ b/refs/ref-cache.c @@ -71,6 +71,8 @@ static void free_ref_entry(struct ref_entry *entry) void free_ref_cache(struct ref_cache *cache) { + if (!cache) + return; free_ref_entry(cache->root); free(cache); }