The patches for 3.0.3.
[rsync/rsync-patches.git] / transliterate.diff
index eeb12cc..f12cf5f 100644 (file)
@@ -26,7 +26,7 @@ diff --git a/flist.c b/flist.c
  #define PTR_SIZE (sizeof (struct file_struct *))
  
  int io_error;
-@@ -642,6 +645,24 @@ static void send_file_entry(int f, struct file_struct *file, int ndx, int first_
+@@ -616,6 +619,24 @@ static void send_file_entry(int f, const char *fname, struct file_struct *file,
                stats.total_size += F_LENGTH(file);
  }
  
@@ -51,16 +51,16 @@ diff --git a/flist.c b/flist.c
  static struct file_struct *recv_file_entry(struct file_list *flist,
                                           int xflags, int f)
  {
-@@ -710,6 +731,9 @@ static struct file_struct *recv_file_entry(struct file_list *flist,
+@@ -684,6 +705,9 @@ static struct file_struct *recv_file_entry(struct file_list *flist,
        }
  #endif
  
 +      if (tr_opt)
 +              transliterate(thisname);
 +
-       clean_fname(thisname, 0);
+       if (*thisname)
+               clean_fname(thisname, 0);
  
-       if (sanitize_paths)
 diff --git a/options.c b/options.c
 --- a/options.c
 +++ b/options.c
@@ -145,7 +145,7 @@ diff --git a/rsync.yo b/rsync.yo
       --checksum-seed=NUM     set block/file checksum seed (advanced)
   -4, --ipv4                  prefer IPv4
   -6, --ipv6                  prefer IPv6
-@@ -2071,6 +2072,22 @@ daemon uses the charset specified in its "charset" configuration parameter
+@@ -2077,6 +2078,22 @@ daemon uses the charset specified in its "charset" configuration parameter
  regardless of the remote charset you actually pass.  Thus, you may feel free to
  specify just the local charset for a daemon transfer (e.g. bf(--iconv=utf8)).