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
Merge across rsync+ patch; add a little documentation to the manpage. More documenta...
[rsync/rsync.git]
/
flist.c
diff --git
a/flist.c
b/flist.c
index
bb6149e
..
edd6024
100644
(file)
--- a/
flist.c
+++ b/
flist.c
@@
-47,6
+47,9
@@
extern int remote_version;
extern int io_error;
extern int sanitize_paths;
extern int io_error;
extern int sanitize_paths;
+extern int read_batch;
+extern int write_batch;
+
static char topsrcname[MAXPATHLEN];
static struct exclude_struct **local_exclude_list;
static char topsrcname[MAXPATHLEN];
static struct exclude_struct **local_exclude_list;
@@
-613,6
+616,9
@@
void send_file_name(int f,struct file_list *flist,char *fname,
out_of_memory("send_file_name");
}
out_of_memory("send_file_name");
}
+ if (write_batch) /* dw */
+ file->flags = FLAG_DELETE;
+
if (strcmp(file->basename,"")) {
flist->files[flist->count++] = file;
send_file_entry(file,f,base_flags);
if (strcmp(file->basename,"")) {
flist->files[flist->count++] = file;
send_file_entry(file,f,base_flags);
@@
-841,6
+847,8
@@
struct file_list *send_file_list(int f,int argc,char *argv[])
io_end_buffering(f);
stats.flist_size = stats.total_written - start_write;
stats.num_files = flist->count;
io_end_buffering(f);
stats.flist_size = stats.total_written - start_write;
stats.num_files = flist->count;
+ if (write_batch) /* dw */
+ write_batch_flist_info(flist->count, flist->files);
}
if (verbose > 2)
}
if (verbose > 2)
@@
-918,7
+926,7
@@
struct file_list *recv_file_list(int f)
}
/* if protocol version is >= 17 then recv the io_error flag */
}
/* if protocol version is >= 17 then recv the io_error flag */
- if (f != -1 && remote_version >= 17
) {
+ if (f != -1 && remote_version >= 17
&& !read_batch) { /* dw-added readbatch */
extern int module_id;
extern int ignore_errors;
if (lp_ignore_errors(module_id) || ignore_errors) {
extern int module_id;
extern int ignore_errors;
if (lp_ignore_errors(module_id) || ignore_errors) {