X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/c0d8e84c9dd6e753f65448caa74e662ab070c0a0..3cb22c204c8f0383f187fc0b41a94b16844a2838:/main.c diff --git a/main.c b/main.c index 715af860..fb0924a1 100644 --- a/main.c +++ b/main.c @@ -151,6 +151,8 @@ static void report(int f) /* this is the client */ if (!am_sender) { + /* Read the first two in opposite order because the meaning of + * read/write swaps when switching from sender to receiver. */ total_written = read_longint(f); total_read = read_longint(f); stats.total_size = read_longint(f); @@ -461,9 +463,8 @@ static int do_recv(int f_in,int f_out,struct file_list *flist,char *local_name) if (!delete_after) { /* I moved this here from recv_files() to prevent a race condition */ - if (recurse && delete_mode && !local_name && flist->count>0) { + if (recurse && delete_mode && !local_name && flist->count > 0) delete_files(flist); - } } if (fd_pair(error_pipe) < 0) { @@ -1085,6 +1086,8 @@ int main(int argc,char *argv[]) batch_name); exit_cleanup(RERR_FILEIO); } + if (read_batch) + read_stream_flags(batch_fd); } if (am_daemon && !am_server)