]> git.ipfire.org Git - thirdparty/git.git/commitdiff
validate_packed_ref_cache(): take a `packed_ref_store *` parameter
authorMichael Haggerty <mhagger@alum.mit.edu>
Fri, 23 Jun 2017 07:01:25 +0000 (09:01 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 23 Jun 2017 20:27:32 +0000 (13:27 -0700)
It only cares about the packed-refs part of the reference store.

Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
refs/files-backend.c

index 2b0db60b2b648c9b600384afd90838437227f886..f061506bf08b4471cd156de01b023343dd7d9f9f 100644 (file)
@@ -396,12 +396,11 @@ static void files_ref_path(struct files_ref_store *refs,
  * Check that the packed refs cache (if any) still reflects the
  * contents of the file. If not, clear the cache.
  */
-static void validate_packed_ref_cache(struct files_ref_store *refs)
+static void validate_packed_ref_cache(struct packed_ref_store *refs)
 {
-       if (refs->packed_ref_store->cache &&
-           !stat_validity_check(&refs->packed_ref_store->cache->validity,
-                                refs->packed_ref_store->path))
-               clear_packed_ref_cache(refs->packed_ref_store);
+       if (refs->cache &&
+           !stat_validity_check(&refs->cache->validity, refs->path))
+               clear_packed_ref_cache(refs);
 }
 
 /*
@@ -417,7 +416,7 @@ static struct packed_ref_cache *get_packed_ref_cache(struct files_ref_store *ref
        const char *packed_refs_file = refs->packed_ref_store->path;
 
        if (!is_lock_file_locked(&refs->packed_ref_store->lock))
-               validate_packed_ref_cache(refs);
+               validate_packed_ref_cache(refs->packed_ref_store);
 
        if (!refs->packed_ref_store->cache)
                refs->packed_ref_store->cache = read_packed_refs(packed_refs_file);
@@ -1364,7 +1363,7 @@ static int lock_packed_refs(struct files_ref_store *refs, int flags)
         * cache is still valid. We've just locked the file, but it
         * might have changed the moment *before* we locked it.
         */
-       validate_packed_ref_cache(refs);
+       validate_packed_ref_cache(refs->packed_ref_store);
 
        packed_ref_cache = get_packed_ref_cache(refs);
        /* Increment the reference count to prevent it from being freed: */