diff options
author | Tay Ray Chuan <rctay89@gmail.com> | 2010-03-02 18:49:28 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-03-02 11:10:36 -0800 |
commit | 09ae9aca14750f00c9e25fd16cdf60819fb410a8 (patch) | |
tree | 91d346680038b6299d7093b8113ffb807fff2af1 | |
parent | b5e59989eb20a8d6257760605052fe1d3fefca88 (diff) | |
download | git-09ae9aca14750f00c9e25fd16cdf60819fb410a8.tar.gz git-09ae9aca14750f00c9e25fd16cdf60819fb410a8.tar.xz |
http-walker: cleanup more thoroughly
Signed-off-by: Tay Ray Chuan <rctay89@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | http-walker.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/http-walker.c b/http-walker.c index 700bc1311..508e35517 100644 --- a/http-walker.c +++ b/http-walker.c @@ -543,6 +543,23 @@ static int fetch_ref(struct walker *walker, struct ref *ref) static void cleanup(struct walker *walker) { + struct walker_data *data = walker->data; + struct alt_base *alt, *alt_next; + + if (data) { + alt = data->alt; + while (alt) { + alt_next = alt->next; + + free(alt->base); + free(alt); + + alt = alt_next; + } + free(data); + walker->data = NULL; + } + http_cleanup(); } |