Commit e23ede0de599feaabf52cbac89f04b5293a9c4bc

Carlos Martín Nieto 2011-07-26T15:22:15

index: invalidate added paths When a file is updated in the index, it's path needs to be invalidated in the tree cache as the hash is no longer correct. Signed-off-by: Carlos Martín Nieto <cmn@elego.de>

diff --git a/src/index.c b/src/index.c
index 905e9c5..34f7d05 100644
--- a/src/index.c
+++ b/src/index.c
@@ -436,6 +436,8 @@ static int index_add(git_index *index, const char *path, int stage, int replace)
 	if (ret)
 		goto err;
 
+	git_tree_cache_invalidate_path(index->tree, entry->path);
+
 	return ret;
 err:
 	index_entry_free(entry);
@@ -468,6 +470,8 @@ static int index_add2(git_index *index, const git_index_entry *source_entry,
 	if (ret)
 		goto err;
 
+	git_tree_cache_invalidate_path(index->tree, entry->path);
+
 	return ret;
 err:
 	index_entry_free(entry);