Some exclude changes for the new --filter option, including:
[rsync/rsync.git] / exclude.c
index 5c8c7f4..225c0e2 100644 (file)
--- a/exclude.c
+++ b/exclude.c
@@ -383,11 +383,9 @@ void send_exclude_list(int f)
 {
        struct exclude_struct *ent;
 
-       /* This is a complete hack - blame Rusty.
-        *
-        * FIXME: This pattern shows up in the output of
-        * report_exclude_result(), which is not ideal. */
-       if (list_only && !recurse)
+       /* This is a complete hack - blame Rusty.  FIXME!
+        * Remove this hack when older rsyncs (below 2.6.4) are gone. */
+       if (list_only == 1 && !recurse)
                add_exclude(&exclude_list, "/*/*", 0);
 
        for (ent = exclude_list.head; ent; ent = ent->next) {
@@ -405,7 +403,7 @@ void send_exclude_list(int f)
                if (ent->match_flags & MATCHFLG_INCLUDE) {
                        write_int(f, l + 2);
                        write_buf(f, "+ ", 2);
-               } else if ((*p == '-' || *p == '+') && p[1] == ' ') {
+               } else if (*p == '-' || *p == '+') {
                        write_int(f, l + 2);
                        write_buf(f, "- ", 2);
                } else