mirror of
https://github.com/RsyncProject/rsync.git
synced 2026-10-23 06:14:18 -04:00
Need to output the "failed verification" error before sending the
MSG_REDO so that the output comes out in the right order.
This commit is contained in:
1 parent
e2bc412669
commit
007e3c0e9a
1 file changed
+17
-15
+17
-15
@@ -552,25 +552,27 @@ int recv_files(int f_in, struct file_list *flist, char *local_name)
|
||||
cleanup_disable();
|
||||
|
||||
if (!recv_ok) {
|
||||
int msgtype;
|
||||
char *redostr;
|
||||
int msgtype = csum_length == SUM_LENGTH || read_batch ?
|
||||
FERROR : FINFO;
|
||||
if (msgtype == FERROR || verbose) {
|
||||
char *errstr, *redostr;
|
||||
char *keptstr = keep_partial || inplace ?
|
||||
"retain" : "discard";
|
||||
if (msgtype == FERROR) {
|
||||
errstr = "ERROR";
|
||||
redostr = "";
|
||||
} else {
|
||||
errstr = "WARNING";
|
||||
redostr = " (will try again)";
|
||||
}
|
||||
rprintf(msgtype,
|
||||
"%s: %s failed verification -- update %sed%s.\n",
|
||||
errstr, fname, keptstr, redostr);
|
||||
}
|
||||
if (csum_length != SUM_LENGTH) {
|
||||
char buf[4];
|
||||
SIVAL(buf, 0, i);
|
||||
send_msg(MSG_REDO, buf, 4);
|
||||
msgtype = read_batch ? FERROR : FINFO;
|
||||
redostr = read_batch ? " Redo doubtful."
|
||||
: " Redo pending.";
|
||||
} else {
|
||||
msgtype = FERROR;
|
||||
redostr = "";
|
||||
}
|
||||
if (verbose || read_batch) {
|
||||
rprintf(msgtype,
|
||||
"%s: %s failed verification. Update %sed.%s\n",
|
||||
msgtype == FERROR ? "ERROR" : "WARNING",
|
||||
fname, keep_partial || inplace ?
|
||||
"retain" : "discard", redostr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user