[SCM] The rsync repository. - branch master updated

Rsync CVS commit messages rsync-cvs at lists.samba.org
Thu Feb 27 22:31:23 MST 2014


The branch, master has been updated
       via  e1bfdf6 Avoid the use of an extra leading dot when using --temp-dir.
      from  3fe686b Explicitly mention that dirs aren't affected by --update.

;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit e1bfdf67f3944e4f23202943cc5f535b4b66ee57
Author: Wayne Davison <wayned at samba.org>
Date:   Wed Feb 26 13:44:01 2014 -0800

    Avoid the use of an extra leading dot when using --temp-dir.

-----------------------------------------------------------------------

Summary of changes:
 NEWS       |    3 +++
 receiver.c |    9 ++++++---
 rsync.yo   |    3 +++
 3 files changed, 12 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/NEWS b/NEWS
index bef1944..9407d3c 100644
--- a/NEWS
+++ b/NEWS
@@ -57,6 +57,9 @@ Changes since 3.1.0:
 
   ENHANCEMENTS:
 
+    - Tweaked the temp-file naming when --temp-dir=DIR is used: the temp-file
+      names with not get an extra leading '.' prepended.
+
     - Added the support/rsync-no-vanished wrapper script.
 
     - Made configure more prominently mention when we failed to find yodl (in
diff --git a/receiver.c b/receiver.c
index 413c31c..39f6627 100644
--- a/receiver.c
+++ b/receiver.c
@@ -113,9 +113,12 @@ int get_tmpname(char *fnametmp, const char *fname, BOOL make_unique)
 		}
 	} else
 		f = fname;
-	if (*f == '.') /* avoid an extra leading dot for OS X's sake */
-		f++;
-	fnametmp[length++] = '.';
+
+	if (!tmpdir) { /* using a tmpdir avoids the leading dot on our temp names */
+		if (*f == '.') /* avoid an extra leading dot for OS X's sake */
+			f++;
+		fnametmp[length++] = '.';
+	}
 
 	/* The maxname value is bufsize, and includes space for the '\0'.
 	 * NAME_MAX needs an extra -1 for the name's leading dot. */
diff --git a/rsync.yo b/rsync.yo
index 6295110..6b55818 100644
--- a/rsync.yo
+++ b/rsync.yo
@@ -1726,6 +1726,9 @@ dit(bf(-T, --temp-dir=DIR)) This option instructs rsync to use DIR as a
 scratch directory when creating temporary copies of the files transferred
 on the receiving side.  The default behavior is to create each temporary
 file in the same directory as the associated destination file.
+Beginning with rsync 3.1.1, the temp-file names inside the specified DIR will
+not be prefixed with an extra dot (though they will still have a random suffix
+added).
 
 This option is most often used when the receiving disk partition does not
 have enough free space to hold a copy of the largest file in the transfer.


-- 
The rsync repository.


More information about the rsync-cvs mailing list