We DO still need load the config from the index apparently.
diff --git a/src/submodule.c b/src/submodule.c
index a59fb89..efea9ed 100644
--- a/src/submodule.c
+++ b/src/submodule.c
@@ -1269,7 +1269,8 @@
 
 	/* add submodule information from index */
 
-	load_submodule_config_from_index(repo, &gitmodules_oid);
+    if ((error = load_submodule_config_from_index(repo, &gitmodules_oid)) < 0)        
+        goto cleanup;
 
 	/* add submodule information from HEAD */