Fixed a length problem parsing an arg of "./".
[rsync/rsync.git] / sender.c
index 397e1c8..fc9c47c 100644 (file)
--- a/sender.c
+++ b/sender.c
@@ -6,8 +6,9 @@
  * Copyright (C) 2003-2007 Wayne Davison
  *
  * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 3 as
- * published by the Free Software Foundation.
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -264,7 +265,8 @@ void send_files(int f_in, int f_out)
                updating_basis_file = inplace && (protocol_version >= 29
                        ? fnamecmp_type == FNAMECMP_FNAME : make_backups <= 0);
 
-               stats.current_file_index = ndx;
+               if (!am_server && do_progress)
+                       set_current_file_index(file, ndx);
                stats.num_transferred_files++;
                stats.total_transferred_size += F_LENGTH(file);
 
@@ -288,13 +290,13 @@ void send_files(int f_in, int f_out)
                        if (errno == ENOENT) {
                                enum logcode c = am_daemon
                                    && protocol_version < 28 ? FERROR
-                                                            : FINFO;
+                                                            : FWARNING;
                                io_error |= IOERR_VANISHED;
                                rprintf(c, "file has vanished: %s\n",
                                        full_fname(fname));
                        } else {
                                io_error |= IOERR_GENERAL;
-                               rsyserr(FERROR, errno,
+                               rsyserr(FERROR_XFER, errno,
                                        "send_files failed to open %s",
                                        full_fname(fname));
                        }
@@ -348,7 +350,7 @@ void send_files(int f_in, int f_out)
                        j = unmap_file(mbuf);
                        if (j) {
                                io_error |= IOERR_GENERAL;
-                               rsyserr(FERROR, j,
+                               rsyserr(FERROR_XFER, j,
                                        "read errors mapping %s",
                                        full_fname(fname));
                        }