X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/5454d22ad8b63f00aa0b64d8568f2781e31a382b..8982a89b24be0a0b43c85ec64d89b70c941a050c:/options.c diff --git a/options.c b/options.c index 9aa0c261..8eb38110 100644 --- a/options.c +++ b/options.c @@ -72,7 +72,7 @@ int numeric_ids = 0; int force_delete = 0; int io_timeout = 0; int am_server = 0; -int am_sender = 0; +int am_sender = -1; int am_generator = 0; char *files_from = NULL; int filesfrom_fd = -1; @@ -825,6 +825,9 @@ int parse_arguments(int *argc, const char ***argv, int frommain) } } + if (am_sender < 0) + am_sender = 0; + #if !SUPPORT_LINKS if (preserve_links && !am_sender) { snprintf(err_buf, sizeof err_buf, @@ -914,7 +917,10 @@ int parse_arguments(int *argc, const char ***argv, int frommain) "You may not combine multiple --delete-WHEN options.\n"); return 0; } - if (delete_before || delete_during || delete_after) + if (!recurse) { + delete_before = delete_during = delete_after = 0; + delete_mode = delete_excluded = 0; + } else if (delete_before || delete_during || delete_after) delete_mode = 1; else if (delete_mode || delete_excluded) delete_mode = delete_before = 1;