Note: This is an updated patch for 2.6.0, created by Wayne Davison.
###########################################################################
--- orig/fileio.c 6 Dec 2003 21:07:27 -0000 1.8
-+++ rsync-2.6.0/fileio.c 16 Dec 2003 19:12:29 -0000
++++ rsync-2.6.0/fileio.c 24 Dec 2003 01:47:40 -0000
@@ -69,6 +69,21 @@
return len;
}
if (r1 <= 0) {
if (ret > 0) return ret;
--- orig/flist.c 15 Dec 2003 08:10:31 -0000 1.144
-+++ rsync-2.6.0/rsync-2.6.0/flist.c 16 Dec 2003 19:12:30 -0000
++++ rsync-2.6.0/flist.c 24 Dec 2003 01:47:40 -0000
@@ -925,7 +925,7 @@
flist = flist_new();
if (filesfrom_fd >= 0) {
if (argv[0] && !push_dir(argv[0], 0)) {
rprintf(FERROR, "push_dir %s failed: %s\n",
---- orig/io.c 15 Dec 2003 00:54:44 -0000 1.112
-+++ rsync-2.6.0/rsync-2.6.0/io.c 16 Dec 2003 19:12:30 -0000
+--- orig/io.c 24 Dec 2003 01:46:07 -0000 1.113
++++ rsync-2.6.0/io.c 24 Dec 2003 01:47:41 -0000
@@ -41,8 +41,8 @@
static int io_multiplexing_out;
static time_t last_io;
static int no_flush;
-@@ -441,17 +441,31 @@
+@@ -440,17 +440,31 @@
static size_t remaining;
int tag, ret = 0;
char line[1024];
}
read_loop(fd, line, 4);
-@@ -460,8 +474,16 @@
+@@ -459,8 +473,16 @@
remaining = tag & 0xFFFFFF;
tag = tag >> 24;
tag -= MPLEX_BASE;
-@@ -483,6 +505,9 @@
+@@ -482,6 +504,9 @@
remaining = 0;
}
return ret;
}
-@@ -499,8 +524,6 @@
+@@ -498,8 +523,6 @@
size_t total=0;
while (total < N) {
ret = read_unbuffered(fd, buffer + total, N-total);
total += ret;
}
-@@ -683,7 +706,7 @@
+@@ -682,7 +705,7 @@
static char *io_buffer;
static int io_buffer_count;
{
if (io_buffer) return;
multiplex_out_fd = fd;
-@@ -692,6 +715,11 @@
+@@ -691,6 +714,11 @@
io_buffer_count = 0;
}
/**
* Write an message to a multiplexed stream. If this fails then rsync
* exits.
-@@ -882,7 +910,7 @@
+@@ -881,7 +909,7 @@
{
multiplex_out_fd = fd;
io_flush();
io_multiplexing_out = 1;
}
---- orig/main.c 16 Dec 2003 18:02:03 -0000 1.173
-+++ rsync-2.6.0/main.c 16 Dec 2003 19:12:30 -0000
+--- orig/main.c 20 Dec 2003 16:57:24 -0000 1.176
++++ rsync-2.6.0/main.c 24 Dec 2003 01:47:41 -0000
@@ -380,6 +380,8 @@
exit_cleanup(0);
}
}
--- orig/proto.h 6 Dec 2003 21:07:27 -0000 1.161
-+++ rsync-2.6.0/proto.h 16 Dec 2003 19:12:30 -0000
++++ rsync-2.6.0/proto.h 24 Dec 2003 01:47:41 -0000
@@ -68,6 +68,7 @@
const char *line, int include);
void add_cvs_excludes(void);
void io_end_buffering(void);
void write_int(int f,int32 x);
--- orig/receiver.c 15 Dec 2003 08:14:27 -0000 1.56
-+++ rsync-2.6.0/receiver.c 16 Dec 2003 19:12:30 -0000
++++ rsync-2.6.0/receiver.c 24 Dec 2003 01:47:41 -0000
@@ -307,6 +307,8 @@
offset += len;
}