On 3/12/2021 1:50 AM, Junio C Hamano wrote: > "Derrick Stolee via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > >> void ensure_full_index(struct index_state *istate) >> { >> ... >> + int i; >> + tree = lookup_tree(istate->repo, &ce->oid); >> + >> + memset(&ps, 0, sizeof(ps)); >> + ps.recursive = 1; >> + ps.has_wildcard = 1; >> + ps.max_depth = -1; >> + >> + read_tree_recursive(istate->repo, tree, >> + ce->name, strlen(ce->name), >> + 0, &ps, >> + add_path_to_index, full); > > Ævar, the assumption that led to your e68237bb (tree.h API: remove > support for starting at prefix != "", 2021-03-08) closes the door > for this code rather badly. Please work with Derrick to figure out > what the best course of action would be. Thanks for pointing this out, Junio. My preference would be to drop "tree.h API: remove support for starting at prefix != """, but it should be OK to keep "tree.h API: remove "stage" parameter from read_tree_recursive()" (currently b3a078863f6), even though it introduces a semantic conflict here. Since I haven't seen my sparse-index topic get picked up by a tracking branch, I'd be happy to rebase on top of Ævar's topic if I can still set a non-root prefix. Thanks, -Stolee