diff options
author | rfkelly0 <rfkelly0@67cdc799-7952-0410-af00-57a81ceafa0f> | 2009-11-21 12:07:04 +0000 |
---|---|---|
committer | rfkelly0 <rfkelly0@67cdc799-7952-0410-af00-57a81ceafa0f> | 2009-11-21 12:07:04 +0000 |
commit | 7425f0470a3d0f7304f1ac4d89afdcb92da1c262 (patch) | |
tree | 633daf2d2e5c0e6b7829721e5e9245fa300868ec /fs/errors.py | |
parent | 5a28418cce97c96fba2b4eae15d63ec8ea3ce184 (diff) | |
download | pyfilesystem-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.py | 7 |
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()) |