Merge branch 'jk/initialization-fix-to-add-submodule-odb'
authorJunio C Hamano <gitster@pobox.com>
Tue, 3 Nov 2015 23:13:04 +0000 (15:13 -0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 3 Nov 2015 23:13:04 +0000 (15:13 -0800)
We peek objects from submodule's object store by linking it to the
list of alternate object databases, but the code to do so forgot to
correctly initialize the list.

* jk/initialization-fix-to-add-submodule-odb:
add_submodule_odb: initialize alt_odb list earlier

submodule.c
index 5879cfb158f0b581a54a56de5de44af5c2d0a700..88af54c633851d440f46e21d65b1362b6360d2bb 100644 (file)
@@ -130,6 +130,7 @@ static int add_submodule_odb(const char *path)
                goto done;
        }
        /* avoid adding it twice */
+       prepare_alt_odb();
        for (alt_odb = alt_odb_list; alt_odb; alt_odb = alt_odb->next)
                if (alt_odb->name - alt_odb->base == objects_directory.len &&
                                !strncmp(alt_odb->base, objects_directory.buf,
@@ -148,7 +149,6 @@ static int add_submodule_odb(const char *path)
 
        /* add possible alternates from the submodule */
        read_info_alternates(objects_directory.buf, 0);
-       prepare_alt_odb();
 done:
        strbuf_release(&objects_directory);
        return ret;