summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVicent Martí <vicent@github.com>2013-10-04 08:50:44 -0700
committerVicent Martí <vicent@github.com>2013-10-04 08:50:44 -0700
commitec5fe2da8b4afe0b65156477f3cfbb30b9a25643 (patch)
treef500bafe60706821b7539c109d6386fd6cfe73f5 /src
parent146b4d1c5f98aa14df086503f996d131d40b92f8 (diff)
parentda7b78fa446b31e7e197d51129d9bd005acc69da (diff)
downloadlibgit2-ec5fe2da8b4afe0b65156477f3cfbb30b9a25643.tar.gz
Merge pull request #1892 from libgit2/ntk/topic/index_read
Make git_index_read() cope with external additions and removals of the index file
Diffstat (limited to 'src')
-rw-r--r--src/index.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/index.c b/src/index.c
index 21a8d31d1..c923f1675 100644
--- a/src/index.c
+++ b/src/index.c
@@ -461,9 +461,10 @@ int git_index_read(git_index *index)
return create_index_error(-1,
"Failed to read index: The index is in-memory only");
- if (!index->on_disk || git_path_exists(index->index_file_path) == false) {
+ index->on_disk = git_path_exists(index->index_file_path);
+
+ if (!index->on_disk) {
git_index_clear(index);
- index->on_disk = 0;
return 0;
}