X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/a3221d2ac14255c31109a617c4d62b949cd910de..bb6721dce6bac8ff2374609bf5f99ea7e6fe2c70:/sender.c diff --git a/sender.c b/sender.c index 688dff61..c5dffc1c 100644 --- a/sender.c +++ b/sender.c @@ -115,7 +115,7 @@ void send_files(struct file_list *flist, int f_out, int f_in) struct sum_struct *s; struct map_struct *mbuf = NULL; STRUCT_STAT st; - char fname[MAXPATHLEN]; + char *fname2, fname[MAXPATHLEN]; int i; struct file_struct *file; int phase = 0; @@ -160,23 +160,21 @@ void send_files(struct file_list *flist, int f_out, int f_in) fname[offset++] = '/'; } else offset = 0; - f_name_to(file, fname + offset); + fname2 = f_name_to(file, fname + offset); if (verbose > 2) rprintf(FINFO, "send_files(%d, %s)\n", i, fname); if (dry_run) { - if (!am_server && verbose) { - rprintf(FINFO, "%s\n", fname+offset); - } + if (!am_server && verbose) /* log the transfer */ + rprintf(FINFO, "%s\n", safe_fname(fname2)); write_int(f_out, i); continue; } initial_stats = stats; - s = receive_sums(f_in); - if (!s) { + if (!(s = receive_sums(f_in))) { io_error |= IOERR_GENERAL; rprintf(FERROR, "receive_sums failed\n"); return; @@ -210,23 +208,24 @@ void send_files(struct file_list *flist, int f_out, int f_in) return; } - mbuf = st.st_size ? map_file(fd, st.st_size) : NULL; + mbuf = st.st_size ? map_file(fd, st.st_size, s->blength) : NULL; if (verbose > 2) { rprintf(FINFO, "send_files mapped %s of size %.0f\n", - fname, (double)st.st_size); + safe_fname(fname), (double)st.st_size); } write_int(f_out, i); write_sum_head(f_out, s); - if (verbose > 2) - rprintf(FINFO, "calling match_sums %s\n", fname); - - if (!am_server && verbose) { - rprintf(FINFO, "%s\n", fname+offset); + if (verbose > 2) { + rprintf(FINFO, "calling match_sums %s\n", + safe_fname(fname)); } + if (!am_server && verbose) /* log the transfer */ + rprintf(FINFO, "%s\n", safe_fname(fname2)); + set_compression(fname); match_sums(f_out, s, mbuf, st.st_size); @@ -245,8 +244,10 @@ void send_files(struct file_list *flist, int f_out, int f_in) free_sums(s); - if (verbose > 2) - rprintf(FINFO, "sender finished %s\n", fname); + if (verbose > 2) { + rprintf(FINFO, "sender finished %s\n", + safe_fname(fname)); + } } if (verbose > 2)