Updated.
[rsync/rsync-patches.git] / perdir-exclude-from.diff
index de35e9d..9e73750 100644 (file)
@@ -1,5 +1,5 @@
---- exclude.c  22 Apr 2004 22:17:15 -0000      1.71
-+++ exclude.c  22 Apr 2004 10:32:52 -0000
+--- exclude.c  24 Apr 2004 08:00:39 -0000      1.73
++++ exclude.c  24 Apr 2004 08:09:39 -0000
 @@ -27,15 +27,17 @@
  #include "rsync.h"
  
  extern char curr_dir[];
  
 -struct exclude_list_struct exclude_list = { 0, 0, "" };
--struct exclude_list_struct local_exclude_list = { 0, 0, "local-cvsignore " };
+-struct exclude_list_struct local_exclude_list = { 0, 0, "per-dir .cvsignore " };
 -struct exclude_list_struct server_exclude_list = { 0, 0, "server " };
 +struct exclude_list_struct exclude_list = { 0, 0, 0, "" };
-+struct exclude_list_struct perdir_exclude_list = { 0, 0, 0, "perdir " };
-+struct exclude_list_struct local_exclude_list = { 0, 0, 0, "local-cvsignore " };
++struct exclude_list_struct perdir_exclude_list = { 0, 0, 0, "per-dir custom " };
++struct exclude_list_struct local_exclude_list = { 0, 0, 0, "per-dir .cvsignore " };
 +struct exclude_list_struct server_exclude_list = { 0, 0, 0, "server " };
  char *exclude_path_prefix = NULL;
  
  }
  
  static int check_one_exclude(char *name, struct exclude_struct *ex,
-@@ -215,22 +233,25 @@ static void report_exclude_result(char c
+@@ -215,21 +233,24 @@ static void report_exclude_result(char c
  
  /*
-  * Return true if file NAME is defined to be excluded by the specified
-- * exclude list.  Returns -1 for an exclude, 1 for an include, and 0 if
-- * no match.
-+ * exclude list.  Returns -1 for an exclude, 0 for a normal include, or 1
-+ * for a super include.
+  * Return -1 if file "name" is defined to be excluded by the specified
+- * exclude list, 1 if it is included, and 0 if it was not matched.
++ * exclude list, 0 for a normal include, or 1 for a super include.
   */
 -int check_exclude(struct exclude_list_struct *listp, char *name, int name_is_dir)
 +int check_exclude(struct exclude_list_struct *listp, char *name, int name_is_dir,
@@ -89,7 +87,7 @@
  }
  
  
-@@ -256,10 +277,10 @@ static const char *get_exclude_tok(const
+@@ -255,10 +276,10 @@ static const char *get_exclude_tok(const
                p = (const char *)s;
        }
  
                s += 2;
        } else
                *incl_ptr = xflags & XFLG_DEF_INCLUDE;
-@@ -391,8 +412,12 @@ void send_exclude_list(int f)
+@@ -390,8 +411,12 @@ void send_exclude_list(int f)
  
                if (ent->include) {
                        write_int(f, l + 2);
                        write_buf(f, "- ", 2);
                } else
 --- flist.c    22 Apr 2004 22:17:15 -0000      1.216
-+++ flist.c    22 Apr 2004 10:32:52 -0000
++++ flist.c    24 Apr 2004 08:09:39 -0000
 @@ -40,6 +40,7 @@ extern int ignore_errors;
  extern int numeric_ids;
  
                }
        }
 --- options.c  17 Apr 2004 17:07:23 -0000      1.147
-+++ options.c  22 Apr 2004 10:32:53 -0000
++++ options.c  24 Apr 2004 08:09:40 -0000
 @@ -70,6 +70,7 @@ int am_server = 0;
  int am_sender = 0;
  int am_generator = 0;
    {"links",           'l', POPT_ARG_NONE,   &preserve_links, 0, 0, 0 },
    {"copy-links",      'L', POPT_ARG_NONE,   &copy_links, 0, 0, 0 },
 --- proto.h    22 Apr 2004 09:58:09 -0000      1.189
-+++ proto.h    22 Apr 2004 10:32:53 -0000
++++ proto.h    24 Apr 2004 08:09:40 -0000
 @@ -52,7 +52,10 @@ int daemon_main(void);
  void setup_protocol(int f_out,int f_in);
  int claim_connection(char *fname,int max_connections);
                 int xflags);
  void add_exclude_file(struct exclude_list_struct *listp, const char *fname,
 --- rsync.h    22 Apr 2004 09:58:24 -0000      1.198
-+++ rsync.h    22 Apr 2004 10:32:53 -0000
++++ rsync.h    24 Apr 2004 08:09:40 -0000
 @@ -502,6 +502,7 @@ struct exclude_struct {
  struct exclude_list_struct {
        struct exclude_struct *head;
        char *debug_type;
  };
  
---- rsync.yo   22 Apr 2004 21:35:45 -0000      1.161
-+++ rsync.yo   22 Apr 2004 10:32:54 -0000
+--- rsync.yo   24 Apr 2004 06:16:04 -0000      1.164
++++ rsync.yo   24 Apr 2004 08:09:41 -0000
 @@ -331,6 +331,7 @@ verb(
       --exclude-from=FILE     exclude patterns listed in FILE
       --include=PATTERN       don't exclude files matching PATTERN
       --files-from=FILE       read FILE for list of source-file names
   -0  --from0                 all file lists are delimited by nulls
       --version               print version number
-@@ -675,6 +676,15 @@ dit(bf(--include-from=FILE)) This specif
+@@ -680,6 +681,15 @@ dit(bf(--include-from=FILE)) This specif
  from a file.
  If em(FILE) is bf(-) the list will be read from standard input.
  
  dit(bf(--files-from=FILE)) Using this option allows you to specify the
  exact list of files to transfer (as read from the specified FILE or "-"
  for stdin).  It also tweaks the default behavior of rsync to make
-@@ -714,7 +724,8 @@ was located on the remote "src" host.
+@@ -719,7 +729,8 @@ was located on the remote "src" host.
  
  dit(bf(-0, --from0)) This tells rsync that the filenames it reads from a
  file are terminated by a null ('\0') character, not a NL, CR, or CR+LF.
  It does not affect --cvs-exclude (since all names read from a .cvsignore
  file are split on whitespace).
  
-@@ -1001,6 +1012,12 @@ itemize(
+@@ -1011,6 +1022,12 @@ itemize(
    it() if the pattern starts with "- " (a minus followed by a space)
    then it is always considered an exclude pattern, even if specified as
    part of an include option. The prefix is discarded before matching.
    it() if the pattern is a single exclamation mark ! then the current
    include/exclude list is reset, removing all previously defined patterns.
 --- t_stub.c   22 Apr 2004 09:58:11 -0000      1.7
-+++ t_stub.c   22 Apr 2004 10:32:54 -0000
++++ t_stub.c   24 Apr 2004 08:09:41 -0000
 @@ -46,7 +46,7 @@ struct exclude_list_struct server_exclud
  }
  
        /* This function doesn't really get called in this test context, so
         * just return 0. */
 --- util.c     22 Apr 2004 22:17:15 -0000      1.138
-+++ util.c     22 Apr 2004 10:32:54 -0000
++++ util.c     24 Apr 2004 08:09:41 -0000
 @@ -476,7 +476,7 @@ static int exclude_server_path(char *arg
        if (server_exclude_list.head) {
                for (s = arg; (s = strchr(s, '/')) != NULL; ) {