]> git.ipfire.org Git - thirdparty/git.git/commitdiff
clear_pattern_list(): clear embedded hashmaps
authorJeff King <peff@peff.net>
Fri, 14 Aug 2020 11:10:49 +0000 (07:10 -0400)
committerJunio C Hamano <gitster@pobox.com>
Fri, 14 Aug 2020 17:48:12 +0000 (10:48 -0700)
Commit 96cc8ab531 (sparse-checkout: use hashmaps for cone patterns,
2019-11-21) added some auxiliary hashmaps to the pattern_list struct,
but they're leaked when clear_pattern_list() is called.

Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
dir.c

diff --git a/dir.c b/dir.c
index 1045cc9c6f58702aba6e9036a8bce91a431c108a..a684ce01866820f3e67fc174af8e524ad32ed2dd 100644 (file)
--- a/dir.c
+++ b/dir.c
@@ -916,6 +916,8 @@ void clear_pattern_list(struct pattern_list *pl)
                free(pl->patterns[i]);
        free(pl->patterns);
        free(pl->filebuf);
+       hashmap_free_entries(&pl->recursive_hashmap, struct pattern_entry, ent);
+       hashmap_free_entries(&pl->parent_hashmap, struct pattern_entry, ent);
 
        memset(pl, 0, sizeof(*pl));
 }