]> git.ipfire.org Git - thirdparty/git.git/blobdiff - refs.c
refs.c: introduce get_main_ref_store()
[thirdparty/git.git] / refs.c
diff --git a/refs.c b/refs.c
index e7606716ddfff47b29f90e4d46cb2d59633cb455..8aa33af4e8e34014d55e696f19aa565927e2b034 100644 (file)
--- a/refs.c
+++ b/refs.c
@@ -1456,15 +1456,20 @@ static struct ref_store *ref_store_init(const char *submodule)
        return refs;
 }
 
+static struct ref_store *get_main_ref_store(void)
+{
+       if (main_ref_store)
+               return main_ref_store;
+
+       return ref_store_init(NULL);
+}
+
 struct ref_store *get_ref_store(const char *submodule)
 {
        struct ref_store *refs;
 
        if (!submodule || !*submodule) {
-               refs = lookup_ref_store(NULL);
-
-               if (!refs)
-                       refs = ref_store_init(NULL);
+               return get_main_ref_store();
        } else {
                refs = lookup_ref_store(submodule);