[PATCH v2 17/25] dir: ensure full index
- From
Derrick Stolee via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Apr 1, 2021, 01:49 UTC
- Message-ID
- <fae4c078c3ef8f65dc6673969642a3b35a254ba6.1617241803.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.906.v2.git.1617241802.gitgitgadget@gmail.com>
From: Derrick Stolee <dstolee@microsoft.com>
Before iterating over all cache entries, ensure that a sparse index is expanded to a full index to avoid unexpected behavior.
Signed-off-by: Derrick Stolee <dstolee@microsoft.com> --- dir.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/dir.c b/dir.c index 5b00dfb5b144..166238e79f52 100644 --- a/dir.c +++ b/dir.c @@ -3533,6 +3533,8 @@ static void connect_wt_gitdir_in_nested(const char *sub_worktree, if (repo_read_index(&subrepo) < 0) die(_("index file corrupt in repo %s"), subrepo.gitdir); + /* TODO: audit for interaction with sparse-index. */ + ensure_full_index(subrepo.index); for (i = 0; i < subrepo.index->cache_nr; i++) { const struct cache_entry *ce = subrepo.index->cache[i];
-- gitgitgadget