Michael Haggerty <mhagger@xxxxxxxxxxxx> writes: > Instead of invalidating the ref cache on an all-or-nothing basis, > allow the cache for individual submodules to be invalidated. That "allow" does not seem to describe what this patch does. It disallows the wholesale invalidation and forces the caller to invalidate ref cache individually. Probably that is what all the existing callers want, but I would have expected that an existing feature would be kept, perhaps like this instead: if (!submodule) { struct ref_cache *c; for (c = ref_cache; c; c = c->next) clear_ref_cache(c); } else { clear_ref_cache(get_ref_cache(submodule); } Not a major "vetoing" objection, just a comment. > Signed-off-by: Michael Haggerty <mhagger@xxxxxxxxxxxx> > --- > refs.c | 12 ++++-------- > 1 files changed, 4 insertions(+), 8 deletions(-) > > diff --git a/refs.c b/refs.c > index 120b8e4..cc72609 100644 > --- a/refs.c > +++ b/refs.c > @@ -202,13 +202,9 @@ static struct cached_refs *get_cached_refs(const char *submodule) > return refs; > } > > -static void invalidate_ref_cache(void) > +static void invalidate_ref_cache(const char *submodule) > { > - struct cached_refs *refs = cached_refs; > - while (refs) { > - clear_cached_refs(refs); > - refs = refs->next; > - } > + clear_cached_refs(get_cached_refs(submodule)); > } -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html