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
Allow + and - in the "include" and "exclude" directives in rsyncd.conf.
[rsync/rsync.git]
/
main.c
diff --git
a/main.c
b/main.c
index
2846f88
..
5bd5b8a
100644
(file)
--- a/
main.c
+++ b/
main.c
@@
-335,6
+335,7
@@
static void do_server_recv(int f_in, int f_out, int argc,char *argv[])
char *local_name=NULL;
char *dir = NULL;
extern int delete_mode;
char *local_name=NULL;
char *dir = NULL;
extern int delete_mode;
+ extern int delete_excluded;
extern int am_daemon;
if (verbose > 2)
extern int am_daemon;
if (verbose > 2)
@@
-351,7
+352,7
@@
static void do_server_recv(int f_in, int f_out, int argc,char *argv[])
}
}
}
}
- if (delete_mode)
+ if (delete_mode
&& !delete_excluded
)
recv_exclude_list(f_in);
flist = recv_file_list(f_in);
recv_exclude_list(f_in);
flist = recv_file_list(f_in);
@@
-408,9
+409,10
@@
int client_run(int f_in, int f_out, int pid, int argc, char *argv[])
if (am_sender) {
extern int cvs_exclude;
extern int delete_mode;
if (am_sender) {
extern int cvs_exclude;
extern int delete_mode;
+ extern int delete_excluded;
if (cvs_exclude)
add_cvs_excludes();
if (cvs_exclude)
add_cvs_excludes();
- if (delete_mode)
+ if (delete_mode
&& !delete_excluded
)
send_exclude_list(f_out);
flist = send_file_list(f_out,argc,argv);
if (verbose > 3)
send_exclude_list(f_out);
flist = send_file_list(f_out,argc,argv);
if (verbose > 3)