Commit f9c01946 authored by owsla's avatar owsla

Handle exception when trying to clear extended attributes on a file that

doesn't support them.


git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup@827 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
parent 14a68722
New in v1.1.13 (????/??/??) New in v1.1.13 (????/??/??)
--------------------------- ---------------------------
Don't throw an error when clearing extended attributes if they are not
supported on the file. (Andrew Ferguson)
New in v1.1.12 (2007/07/12) New in v1.1.12 (2007/07/12)
--------------------------- ---------------------------
......
...@@ -81,6 +81,7 @@ class ExtendedAttributes: ...@@ -81,6 +81,7 @@ class ExtendedAttributes:
def clear_rp(self, rp): def clear_rp(self, rp):
"""Delete all the extended attributes in rpath""" """Delete all the extended attributes in rpath"""
try:
for name in rp.conn.xattr.listxattr(rp.path): for name in rp.conn.xattr.listxattr(rp.path):
try: try:
rp.conn.xattr.removexattr(rp.path, name) rp.conn.xattr.removexattr(rp.path, name)
...@@ -92,6 +93,10 @@ class ExtendedAttributes: ...@@ -92,6 +93,10 @@ class ExtendedAttributes:
% (name, rp.path), 7) % (name, rp.path), 7)
continue continue
else: raise else: raise
except IOError, exc:
if exc[0] == errno.EOPNOTSUPP or exc[0] == errno.EPERM:
return # if not supported, consider empty
else: raise
def write_to_rp(self, rp): def write_to_rp(self, rp):
"""Write extended attributes to rpath rp""" """Write extended attributes to rpath rp"""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment