From: Nguyễn Thái Ngọc Duy Date: Mon, 13 Aug 2018 16:14:26 GMT Subject: [PATCH 09/24] unpack-trees: add a note about path invalidation Message-ID: <20180813161441.16824-10-pclouds@gmail.com> In-Reply-To: <20180813161441.16824-1-pclouds@gmail.com> Signed-off-by: Nguyễn Thái Ngọc Duy --- unpack-trees.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/unpack-trees.c b/unpack-trees.c index f9efee0836..c07a6cd646 100644 --- a/unpack-trees.c +++ b/unpack-trees.c @@ -1552,6 +1552,17 @@ static int verify_uptodate_sparse(const struct cache_entry *ce, return verify_uptodate_1(ce, o, ERROR_SPARSE_NOT_UPTODATE_FILE); } +/* + * TODO: We should actually invalidate o->result, not src_index [1]. + * But since cache tree and untracked cache both are not copied to + * o->result until unpacking is complete, we invalidate them on + * src_index instead with the assumption that they will be copied to + * dst_index at the end. + * + * [1] src_index->cache_tree is also used in unpack_callback() so if + * we invalidate o->result, we need to update it to use + * o->result.cache_tree as well. + */ static void invalidate_ce_path(const struct cache_entry *ce, struct unpack_trees_options *o) { -- 2.18.0.1004.g6639190530