From 05848a2cc797b777473023b0dff6bba62668dc78 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Thu, 28 May 1998 05:05:26 +0000 Subject: [PATCH] don't do recursive deletion if the recurse option is not selected. --- rsync.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/rsync.c b/rsync.c index 555c009a..f41029be 100644 --- a/rsync.c +++ b/rsync.c @@ -74,6 +74,7 @@ static int delete_file(char *fname) extern int force_delete; STRUCT_STAT st; int ret; + extern int recurse; if (do_unlink(fname) == 0 || errno == ENOENT) return 0; @@ -93,7 +94,8 @@ static int delete_file(char *fname) } if (do_rmdir(fname) == 0 || errno == ENOENT) return 0; - if (!force_delete || (errno != ENOTEMPTY && errno != EEXIST)) { + if (!force_delete || !recurse || + (errno != ENOTEMPTY && errno != EEXIST)) { rprintf(FERROR,"rmdir(%s) : %s\n", fname, strerror(errno)); return -1; } -- 2.34.1