summaryrefslogtreecommitdiff
path: root/rdiff-backup/rdiff_backup/rpath.py
diff options
context:
space:
mode:
authorowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2006-12-29 16:10:15 +0000
committerowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2006-12-29 16:10:15 +0000
commit11ac04d5be78aacfd394b4822095f4aeebe18d31 (patch)
tree27f1a6070df5d3754999fef9f557ce8dd98f17da /rdiff-backup/rdiff_backup/rpath.py
parent8eb79a57c18395864e6ef3c776a40d57d9743332 (diff)
downloadrdiff-backup-11ac04d5be78aacfd394b4822095f4aeebe18d31.tar.gz
Add global to avoid unnecessary system calls on systems where umask does not affect symlinks
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@775 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
Diffstat (limited to 'rdiff-backup/rdiff_backup/rpath.py')
-rw-r--r--rdiff-backup/rdiff_backup/rpath.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/rdiff-backup/rdiff_backup/rpath.py b/rdiff-backup/rdiff_backup/rpath.py
index 36cc8af..18b1184 100644
--- a/rdiff-backup/rdiff_backup/rpath.py
+++ b/rdiff-backup/rdiff_backup/rpath.py
@@ -103,9 +103,9 @@ def copy(rpin, rpout, compress = 0):
elif rpin.issym():
# some systems support permissions for symlinks, but
# only by setting at creation via the umask
- orig_umask = os.umask(0777 & ~rpin.getperms())
+ if Globals.symlink_perms: orig_umask = os.umask(0777 & ~rpin.getperms())
rpout.symlink(rpin.readlink())
- os.umask(orig_umask) # restore previous umask
+ if Globals.symlink_perms: os.umask(orig_umask) # restore previous umask
elif rpin.ischardev():
major, minor = rpin.getdevnums()
rpout.makedev("c", major, minor)