summaryrefslogtreecommitdiff
path: root/fs/errors.py
diff options
context:
space:
mode:
authorrfkelly0 <rfkelly0@67cdc799-7952-0410-af00-57a81ceafa0f>2009-11-21 12:07:04 +0000
committerrfkelly0 <rfkelly0@67cdc799-7952-0410-af00-57a81ceafa0f>2009-11-21 12:07:04 +0000
commit7425f0470a3d0f7304f1ac4d89afdcb92da1c262 (patch)
tree633daf2d2e5c0e6b7829721e5e9245fa300868ec /fs/errors.py
parent5a28418cce97c96fba2b4eae15d63ec8ea3ce184 (diff)
downloadpyfilesystem-7425f0470a3d0f7304f1ac4d89afdcb92da1c262.tar.gz
better handling of unicode paths in errors
git-svn-id: http://pyfilesystem.googlecode.com/svn/trunk@277 67cdc799-7952-0410-af00-57a81ceafa0f
Diffstat (limited to 'fs/errors.py')
-rw-r--r--fs/errors.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/fs/errors.py b/fs/errors.py
index 4e52711..5bab395 100644
--- a/fs/errors.py
+++ b/fs/errors.py
@@ -31,7 +31,12 @@ class FSError(Exception):
self.details = details
def __str__(self):
- return unicode(self).encode(sys.getfilesystemencoding())
+ keys = {}
+ for k,v in self.__dict__.iteritems():
+ if isinstance(v,unicode):
+ v = v.encode(sys.getfilesystemencoding())
+ keys[k] = v
+ return str(self.msg % keys)
def __unicode__(self):
keys = dict((k,v) for k,v in self.__dict__.iteritems())