Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Tweaked the error message for RERR_WAITCHILD.
[rsync/rsync.git]
/
receiver.c
diff --git
a/receiver.c
b/receiver.c
index
46e456e
..
5a88311
100644
(file)
--- a/
receiver.c
+++ b/
receiver.c
@@
-46,6
+46,7
@@
extern int module_id;
extern int ignore_errors;
extern int orig_umask;
extern int append_mode;
extern int ignore_errors;
extern int orig_umask;
extern int append_mode;
+extern int sparse_files;
extern int keep_partial;
extern int checksum_seed;
extern int inplace;
extern int keep_partial;
extern int checksum_seed;
extern int inplace;
@@
-353,6
+354,8
@@
static void handle_delayed_updates(struct file_list *flist, char *local_name)
safe_fname(partialptr),
safe_fname(fname));
}
safe_fname(partialptr),
safe_fname(fname));
}
+ /* We don't use robust_rename() here because the
+ * partial-dir must be on the same drive. */
if (do_rename(partialptr, fname) < 0) {
rsyserr(FERROR, errno,
"rename failed for %s (from %s)",
if (do_rename(partialptr, fname) < 0) {
rsyserr(FERROR, errno,
"rename failed for %s (from %s)",
@@
-444,7
+447,10
@@
int recv_files(int f_in, struct file_list *flist, char *local_name)
send_msg(MSG_DONE, "", 0);
if (keep_partial && !partial_dir)
make_backups = 0; /* prevents double backup */
send_msg(MSG_DONE, "", 0);
if (keep_partial && !partial_dir)
make_backups = 0; /* prevents double backup */
- append_mode = 0;
+ if (append_mode) {
+ append_mode = 0;
+ sparse_files = 0;
+ }
continue;
}
continue;
}