From 54bdc64a92bbef7fcc311fa00e38e32cb0bc71e5 Mon Sep 17 00:00:00 2001 From: "Scott J. Goldman" Date: Thu, 10 May 2012 00:37:03 -0700 Subject: [PATCH] Fix rmdir() usage on Solaris On Solaris, rmdir() throws EEXIST if the folder is not empty, so just add one more case to check for that, alongside ENOTEMPTY. --- src/fileops.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fileops.c b/src/fileops.c index bf95f769c..2c3192c92 100644 --- a/src/fileops.c +++ b/src/fileops.c @@ -309,7 +309,7 @@ static int _rmdir_recurs_foreach(void *opaque, git_buf *path) return -1; if (p_rmdir(path->ptr) < 0) { - if (removal_type == GIT_DIRREMOVAL_ONLY_EMPTY_DIRS && errno == ENOTEMPTY) + if (removal_type == GIT_DIRREMOVAL_ONLY_EMPTY_DIRS && (errno == ENOTEMPTY || errno == EEXIST)) return 0; giterr_set(GITERR_OS, "Could not remove directory '%s'", path->ptr);