X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/9f27cd8ca6ccbf1ab4cd8b0b66445535e2573d59..1082b52bd4fbe567b75b6fb15eeefbf7a34c769a:/receiver.c diff --git a/receiver.c b/receiver.c index 1975e580..acc5da85 100644 --- a/receiver.c +++ b/receiver.c @@ -45,6 +45,7 @@ extern int cleanup_got_literal; extern int module_id; extern int ignore_errors; extern int orig_umask; +extern int keep_partial; static void delete_one(char *fn, int is_dir) { @@ -467,7 +468,10 @@ int recv_files(int f_in,struct file_list *flist,char *local_name) if (verbose > 2) rprintf(FINFO,"renaming %s to %s\n",fnametmp,fname); - finish_transfer(fname, fnametmp, file); + if (recv_ok || keep_partial) + finish_transfer(fname, fnametmp, file, recv_ok); + else + do_unlink(fnametmp); cleanup_disable();