summaryrefslogtreecommitdiff
path: root/src/fileops.c
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@microsoft.com>2013-05-03 18:39:44 -0500
committerEdward Thomson <ethomson@microsoft.com>2013-05-03 18:54:47 -0500
commite09d18eed66d0239bea73af51e586f6ae651fe49 (patch)
tree6bd02e603cc2ca5d0a2220537265f6d3883f218c /src/fileops.c
parentdfec726bbae0e699b78db8f1b63372134c8467a6 (diff)
downloadlibgit2-e09d18eed66d0239bea73af51e586f6ae651fe49.tar.gz
allow checkout to proceed when a dir to be removed is in use (win32)
Diffstat (limited to 'src/fileops.c')
-rw-r--r--src/fileops.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/fileops.c b/src/fileops.c
index d6244711f..36f601706 100644
--- a/src/fileops.c
+++ b/src/fileops.c
@@ -444,7 +444,7 @@ static int futils__rmdir_recurs_foreach(void *opaque, git_buf *path)
if (data->error < 0) {
if ((data->flags & GIT_RMDIR_SKIP_NONEMPTY) != 0 &&
- (errno == ENOTEMPTY || errno == EEXIST))
+ (errno == ENOTEMPTY || errno == EEXIST || errno == EBUSY))
data->error = 0;
else
futils__error_cannot_rmdir(path->ptr, NULL);
@@ -480,7 +480,7 @@ static int futils__rmdir_empty_parent(void *opaque, git_buf *path)
if (en == ENOENT || en == ENOTDIR) {
giterr_clear();
error = 0;
- } else if (en == ENOTEMPTY || en == EEXIST) {
+ } else if (en == ENOTEMPTY || en == EEXIST || en == EBUSY) {
giterr_clear();
error = GIT_ITEROVER;
} else {