exit_cleanup(RERR_SYNTAX);
if (ret)
rprintf(FINFO, "Created backup_dir %s\n", backup_dir_buf);
- else if (INFO_GTE(BACKUP, 1)) {
- char *dir = *backup_dir_buf ? backup_dir_buf : ".";
- rprintf(FINFO, "backup_dir is %s\n", dir);
- }
+ else if (INFO_GTE(BACKUP, 1))
+ rprintf(FINFO, "backup_dir is %s\n", backup_dir_buf);
}
io_flush(NORMAL_FLUSH);
"the --backup-dir path is WAY too long.\n");
return 0;
}
- if (backup_dir_len && backup_dir_buf[backup_dir_len - 1] != '/') {
+ if (!backup_dir_len) {
+ backup_dir_len = -1;
+ backup_dir = NULL;
+ } else if (backup_dir_buf[backup_dir_len - 1] != '/') {
backup_dir_buf[backup_dir_len++] = '/';
backup_dir_buf[backup_dir_len] = '\0';
}
+ }
+ if (backup_dir) {
+ /* No need for a suffix or a protect rule. */
} else if (!backup_suffix_len && (!am_server || !am_sender)) {
snprintf(err_buf, sizeof err_buf,
- "--suffix cannot be a null string without --backup-dir\n");
+ "--suffix cannot be empty %s\n", backup_dir_len < 0
+ ? "when --backup-dir is the same as the dest dir"
+ : "without a --backup-dir");
return 0;
} else if (make_backups && delete_mode && !delete_excluded && !am_server) {
snprintf(backup_dir_buf, sizeof backup_dir_buf,