summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2003-11-04 02:24:26 +0000
committerbescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109>2003-11-04 02:24:26 +0000
commit4a78e4c9c64b9568a7995e3f5187f4a3f5993478 (patch)
tree7444744951a59e716eccaabc6341a4dc0a020fab
parent15fae02584fa72173a11f86e12f75722ea0b03b0 (diff)
downloadrdiff-backup-4a78e4c9c64b9568a7995e3f5187f4a3f5993478.tar.gz
Mainly fix for spurious backing up because of uname/gname
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@492 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
-rw-r--r--rdiff-backup/CHANGELOG6
-rw-r--r--rdiff-backup/rdiff_backup/rpath.py10
2 files changed, 9 insertions, 7 deletions
diff --git a/rdiff-backup/CHANGELOG b/rdiff-backup/CHANGELOG
index a71478a..2c4e9cd 100644
--- a/rdiff-backup/CHANGELOG
+++ b/rdiff-backup/CHANGELOG
@@ -10,9 +10,9 @@ was full (reported by Erik Forsberg).
Fixed remote quoting errors found by Daniel Drucker.
-Fixed handling of daylight savings time. Earlier bug would cause some
-files to be marked an hour later. Thanks to Troels Arvin and Farkas
-Levente for bug report.
+Fixed handling of (lack of) daylight savings time. Earlier bug would
+cause some files to be marked an hour later. Thanks to Troels Arvin
+and Farkas Levente for bug report.
New in v0.13.3 (2003/10/14)
diff --git a/rdiff-backup/rdiff_backup/rpath.py b/rdiff-backup/rdiff_backup/rpath.py
index 6678a3d..a549973 100644
--- a/rdiff-backup/rdiff_backup/rpath.py
+++ b/rdiff-backup/rdiff_backup/rpath.py
@@ -296,9 +296,11 @@ class RORPath:
elif key == 'acl' and not Globals.acls_active: pass
elif key == 'resourcefork' and not Globals.resource_forks_active:
pass
- elif ((key == 'uname' or key == 'gname') and
- not other.data.has_key(key)):
- pass # legacy reasons - 0.12.x didn't store u/gnames
+ elif key == 'uname' or key == 'gname':
+ # here for legacy reasons - 0.12.x didn't store u/gnames
+ other_name = other.data.get(key, None)
+ if (other_name and other_name != "None" and
+ other_name != self.data[key]): return None
elif (key == 'inode' and
(not self.isreg() or self.getnumlinks() == 1 or
not Globals.compare_inode or
@@ -307,7 +309,7 @@ class RORPath:
else:
try: other_val = other.data[key]
except KeyError: return None
- if self.data[key] != other.data[key]: return None
+ if self.data[key] != other_val: return None
return 1
def equal_loose(self, other):