From a8023e710b170adcb825b7f7a1af5775f9c0d7b3 Mon Sep 17 00:00:00 2001 From: owsla Date: Tue, 11 Nov 2008 22:32:13 +0000 Subject: Workaround for broken support for symlink extended attributes in pyxattr < 0.2.2. git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@956 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109 --- rdiff-backup/CHANGELOG | 3 +++ rdiff-backup/rdiff_backup/eas_acls.py | 2 ++ 2 files changed, 5 insertions(+) diff --git a/rdiff-backup/CHANGELOG b/rdiff-backup/CHANGELOG index 64ead05..bc3cb4e 100644 --- a/rdiff-backup/CHANGELOG +++ b/rdiff-backup/CHANGELOG @@ -1,6 +1,9 @@ New in v1.2.3 (????/??/??) --------------------------- +Workaround for broken support for symlink extended attributes in pyxattr < +0.2.2. Thanks to Leo Bergolth for reporting the issue. (Andrew Ferguson) + Handle ELOOP ("Too many levels of symbolic links") error when reading extended attributes from symlinks. Closes Savannah bug #24790. (Andrew Ferguson) diff --git a/rdiff-backup/rdiff_backup/eas_acls.py b/rdiff-backup/rdiff_backup/eas_acls.py index 8fa4035..e13efd1 100644 --- a/rdiff-backup/rdiff_backup/eas_acls.py +++ b/rdiff-backup/rdiff_backup/eas_acls.py @@ -79,6 +79,8 @@ class ExtendedAttributes: # File probably modified while reading, just continue if exc[0] == errno.ENODATA: continue elif exc[0] == errno.ENOENT: break + # Handle bug in pyxattr < 0.2.2 + elif exc[0] == errno.ERANGE: continue else: raise def clear_rp(self, rp): -- cgit v1.2.1