Explorar el Código

dummy xattr implementation for unsupported platforms

raising "Unsupported platform" (and making attic completely unusable) just because there is no xattr support isn't necessary.
Thomas Waldmann hace 10 años
padre
commit
1fe844a896
Se han modificado 1 ficheros con 11 adiciones y 1 borrados
  1. 11 1
      attic/xattr.py

+ 11 - 1
attic/xattr.py

@@ -248,4 +248,14 @@ elif sys.platform.startswith('freebsd'):
         _check(func(path, EXTATTR_NAMESPACE_USER, name, value, len(value) if value else 0), path)
 
 else:
-    raise Exception('Unsupported platform: %s' % sys.platform)
+    # this is a dummy xattr interface for platforms for which we do not have
+    # a real implementation (or which do not support xattr at all).
+
+    def listxattr(path, *, follow_symlinks=True):
+        return []
+
+    def getxattr(path, name, *, follow_symlinks=True):
+        return
+
+    def setxattr(path, name, value, *, follow_symlinks=True):
+        return