diff options
author | Junio C Hamano <gitster@pobox.com> | 2011-04-27 11:36:41 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2011-04-27 11:36:41 -0700 |
commit | 1de0746d849c64e1f4d160f9915d87d39c0794ea (patch) | |
tree | 9b85bfacac5e7098856808a25da0b5511ba66fd6 | |
parent | 385185403e74f3b4b52c33bb263ca735c512f66f (diff) | |
parent | 0235017eafa8dfc3a7353b7091ad5109d0beb7a5 (diff) | |
download | git-1de0746d849c64e1f4d160f9915d87d39c0794ea.tar.gz git-1de0746d849c64e1f4d160f9915d87d39c0794ea.tar.xz |
Merge branch 'ar/clean-rmdir-empty'
* ar/clean-rmdir-empty:
clean: unreadable directory may still be rmdir-able if it is empty
-rw-r--r-- | dir.c | 2 | ||||
-rwxr-xr-x | t/t7300-clean.sh | 7 |
2 files changed, 8 insertions, 1 deletions
@@ -1192,7 +1192,7 @@ int remove_dir_recursively(struct strbuf *path, int flag) dir = opendir(path->buf); if (!dir) - return -1; + return rmdir(path->buf); if (path->buf[original_len - 1] != '/') strbuf_addch(path, '/'); diff --git a/t/t7300-clean.sh b/t/t7300-clean.sh index 7e1be4440..800b5368a 100755 --- a/t/t7300-clean.sh +++ b/t/t7300-clean.sh @@ -453,4 +453,11 @@ test_expect_success 'git clean -e' ' ) ' +test_expect_success SANITY 'git clean -d with an unreadable empty directory' ' + mkdir foo && + chmod a= foo && + git clean -dfx foo && + ! test -d foo +' + test_done |