From: Derrick Stolee <redacted>
These two loops iterate over all cache entries, so ensure that a sparse
index is expanded to a full index before we do so.
Signed-off-by: Derrick Stolee <redacted>
---
builtin/commit.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/builtin/commit.c b/builtin/commit.c
index 739110c5a7f6..9ea9e7b53390 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -251,6 +251,7 @@ static int list_paths(struct string_list *list, const char *with_tree,
free(max_prefix);
}
+ ensure_full_index(&the_index);
for (i = 0; i < active_nr; i++) {
const struct cache_entry *ce = active_cache[i];
struct string_list_item *item;@@ -931,6 +932,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix,
if (get_oid(parent, &oid)) {
int i, ita_nr = 0;
+ ensure_full_index(&the_index);
for (i = 0; i < active_nr; i++)
if (ce_intent_to_add(active_cache[i]))
ita_nr++;--
gitgitgadget