diff options
author | Wayne Davison <wayned@samba.org> | 2007-01-27 14:34:15 +0000 |
---|---|---|
committer | Wayne Davison <wayned@samba.org> | 2007-01-27 14:34:15 +0000 |
commit | cc7b86bf9bd8523c9c1f0e7c0aa8741ad7352477 (patch) | |
tree | 034d9d93eb395f62a57e9607139cbb427c8b250f /io.c | |
parent | 8c18ebe81d53ba65546feb5fff89ae574a361343 (diff) | |
download | rsync-cc7b86bf9bd8523c9c1f0e7c0aa8741ad7352477.tar.gz rsync-cc7b86bf9bd8523c9c1f0e7c0aa8741ad7352477.tar.bz2 rsync-cc7b86bf9bd8523c9c1f0e7c0aa8741ad7352477.zip |
The last MSG_DONE from the receiver to the generator is now followed
by the stats.total_read value so that the generator can set its value
to that of the receiver. This makes log_exit() log the right value
when we're on the server side.
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -288,13 +288,17 @@ static void read_msg_fd(void) switch (tag) { case MSG_DONE: - if (len != 0 || !am_generator) { + if (len < 0 || len > 1 || !am_generator) { invalid_msg: rprintf(FERROR, "invalid message %d:%d [%s%s]\n", tag, len, who_am_i(), incremental ? "/incremental" : ""); exit_cleanup(RERR_STREAMIO); } + if (len) { + readfd(fd, buf, len); + stats.total_read = read_longint(fd); + } done_cnt++; break; case MSG_REDO: |