summaryrefslogtreecommitdiff
path: root/read-cache.c
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2018-08-18 14:41:28 (GMT)
committerJunio C Hamano <gitster@pobox.com>2018-08-18 16:47:46 (GMT)
commit4592e6080ff0f9eb0218162be0e40b2d6abc979a (patch)
tree4b9ec1726800a8990ec49caa31c03f7536f9fca8 /read-cache.c
parent5697ca9aa562c1f0b624b4f273685351734162e3 (diff)
downloadgit-4592e6080ff0f9eb0218162be0e40b2d6abc979a.zip
git-4592e6080ff0f9eb0218162be0e40b2d6abc979a.tar.gz
git-4592e6080ff0f9eb0218162be0e40b2d6abc979a.tar.bz2
cache-tree: verify valid cache-tree in the test suite
This makes sure that cache-tree is consistent with the index. The main purpose is to catch potential problems by saving the index in unpack_trees() but the line in write_index() would also help spot missing invalidation in other code. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'read-cache.c')
-rw-r--r--read-cache.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/read-cache.c b/read-cache.c
index 5ce40f3..41f313b 100644
--- a/read-cache.c
+++ b/read-cache.c
@@ -2744,6 +2744,9 @@ int write_locked_index(struct index_state *istate, struct lock_file *lock,
int new_shared_index, ret;
struct split_index *si = istate->split_index;
+ if (git_env_bool("GIT_TEST_CHECK_CACHE_TREE", 0))
+ cache_tree_verify(istate);
+
if ((flags & SKIP_IF_UNCHANGED) && !istate->cache_changed) {
if (flags & COMMIT_LOCK)
rollback_lock_file(lock);