The patches for 3.3.0pre1.
[rsync-patches.git] / detect-renamed.diff
index 0289076383c9b081e7e2002da705bd078b0ea448..1329ab93ede74d1dfc027f96726bb8b966515c8f 100644 (file)
@@ -38,7 +38,7 @@ TODO:
   a file that can't use it, while missing out on giving it to a file
   that could use it.
 
-based-on: 6b5ae825db985e9d1c98576651b50c8e490ddb97
+based-on: 9a06b2edb0ea1a226bcc642682c07bacd2ea47d3
 diff --git a/backup.c b/backup.c
 --- a/backup.c
 +++ b/backup.c
@@ -589,7 +589,7 @@ diff --git a/generator.c b/generator.c
 diff --git a/main.c b/main.c
 --- a/main.c
 +++ b/main.c
-@@ -724,7 +724,7 @@ static char *get_local_name(struct file_list *flist, char *dest_path)
+@@ -726,7 +726,7 @@ static char *get_local_name(struct file_list *flist, char *dest_path)
  
        if (mkpath_dest_arg && statret < 0 && (cp || file_total > 1)) {
                int save_errno = errno;
@@ -609,7 +609,7 @@ diff --git a/options.c b/options.c
  int implied_dirs = 1;
  int missing_args = 0; /* 0 = FERROR_XFER, 1 = ignore, 2 = delete */
  int numeric_ids = 0;
-@@ -742,6 +743,7 @@ static struct poptOption long_options[] = {
+@@ -743,6 +744,7 @@ static struct poptOption long_options[] = {
    {"compare-dest",     0,  POPT_ARG_STRING, 0, OPT_COMPARE_DEST, 0, 0 },
    {"copy-dest",        0,  POPT_ARG_STRING, 0, OPT_COPY_DEST, 0, 0 },
    {"link-dest",        0,  POPT_ARG_STRING, 0, OPT_LINK_DEST, 0, 0 },
@@ -617,7 +617,7 @@ diff --git a/options.c b/options.c
    {"fuzzy",           'y', POPT_ARG_NONE,   0, 'y', 0, 0 },
    {"no-fuzzy",         0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
    {"no-y",             0,  POPT_ARG_VAL,    &fuzzy_basis, 0, 0, 0 },
-@@ -2381,7 +2383,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2398,7 +2400,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                inplace = 1;
        }
  
@@ -626,15 +626,15 @@ diff --git a/options.c b/options.c
                partial_dir = tmp_partialdir;
  
        if (inplace) {
-@@ -2390,6 +2392,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
+@@ -2407,6 +2409,7 @@ int parse_arguments(int *argc_p, const char ***argv_p)
                        snprintf(err_buf, sizeof err_buf,
                                 "--%s cannot be used with --%s\n",
                                 append_mode ? "append" : "inplace",
 +                               detect_renamed ? "detect-renamed" :
                                 delay_updates ? "delay-updates" : "partial-dir");
-                       return 0;
+                       goto cleanup;
                }
-@@ -2813,6 +2816,8 @@ void server_options(char **args, int *argc_p)
+@@ -2833,6 +2836,8 @@ void server_options(char **args, int *argc_p)
                        args[ac++] = "--super";
                if (size_only)
                        args[ac++] = "--size-only";
@@ -666,7 +666,7 @@ diff --git a/rsync.1.md b/rsync.1.md
  --compare-dest=DIR       also compare destination files relative to DIR
  --copy-dest=DIR          ... and include copies of unchanged files
  --link-dest=DIR          hardlink to files in DIR when unchanged
-@@ -2632,6 +2633,22 @@ expand it.
+@@ -2634,6 +2635,22 @@ expand it.
      potential fuzzy-match files, so either use [`--delete-after`](#opt) or
      specify some filename exclusions if you need to prevent this.