summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2008-01-26 19:30:23 +0000
committerowsla <owsla@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2008-01-26 19:30:23 +0000
commit3fe1b02f85de582618148be9752bd0db74ceae78 (patch)
tree53504c0b3525e75dc5482bc79f91e2d3f61d58d5
parentf463198cbf8b921915457c9be4582ed61109ed79 (diff)
downloadrdiff-backup-3fe1b02f85de582618148be9752bd0db74ceae78.tar.gz
Whoops. Previous fix was incorrect -- it assumed that all of the nested
directories would be updated during the backup. git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@877 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
-rw-r--r--rdiff-backup/rdiff_backup/backup.py11
1 files changed, 4 insertions, 7 deletions
diff --git a/rdiff-backup/rdiff_backup/backup.py b/rdiff-backup/rdiff_backup/backup.py
index eab6c75..e0c5eec 100644
--- a/rdiff-backup/rdiff_backup/backup.py
+++ b/rdiff-backup/rdiff_backup/backup.py
@@ -651,16 +651,13 @@ class PatchITRB(rorpiter.ITRBranch):
"""Finish processing directory"""
if self.dir_update:
assert self.base_rp.isdir()
+ rpath.copy_attribs(self.dir_update, self.base_rp)
if (Globals.process_uid != 0 and
self.dir_update.getperms() % 01000 < 0700):
- # Directory's permissions were adjusted at the start to
- # make it readable -- remove it from the list since they
- # will be reset by the copy_attribs() call
- self.CCPP.dir_perms_list.remove((self.base_rp,
- self.dir_update.getperms()))
-
- rpath.copy_attribs(self.dir_update, self.base_rp)
+ # Directory was unreadable at start -- keep it readable
+ # until the end of the backup process.
+ self.base_rp.chmod(0700 | self.dir_update.getperms())
elif self.dir_replacement:
self.base_rp.rmdir()
if self.dir_replacement.lstat():