From: Michael Haggerty Date: Mon, 17 Oct 2011 02:38:09 +0000 (+0200) Subject: clear_ref_cache(): extract two new functions X-Git-Tag: v1.7.8-rc0~20^2~2 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=760c4512e54e524e3a19905c10a65209fda20c12;p=git.git clear_ref_cache(): extract two new functions Extract two new functions from clear_cached_refs(): clear_loose_ref_cache() and clear_packed_ref_cache(). Signed-off-by: Michael Haggerty Signed-off-by: Junio C Hamano --- diff --git a/refs.c b/refs.c index 623d67342..2a21dc344 100644 --- a/refs.c +++ b/refs.c @@ -158,13 +158,24 @@ static void free_ref_array(struct ref_array *array) array->refs = NULL; } -static void clear_ref_cache(struct ref_cache *refs) +static void clear_packed_ref_cache(struct ref_cache *refs) { - if (refs->did_loose) - free_ref_array(&refs->loose); if (refs->did_packed) free_ref_array(&refs->packed); - refs->did_loose = refs->did_packed = 0; + refs->did_packed = 0; +} + +static void clear_loose_ref_cache(struct ref_cache *refs) +{ + if (refs->did_loose) + free_ref_array(&refs->loose); + refs->did_loose = 0; +} + +static void clear_ref_cache(struct ref_cache *refs) +{ + clear_packed_ref_cache(refs); + clear_loose_ref_cache(refs); } static struct ref_cache *create_ref_cache(const char *submodule)