summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/sets/files.py19
1 files changed, 10 insertions, 9 deletions
diff --git a/pym/portage/sets/files.py b/pym/portage/sets/files.py
index f0b6fed58..b5ad9a05d 100644
--- a/pym/portage/sets/files.py
+++ b/pym/portage/sets/files.py
@@ -126,17 +126,18 @@ class StaticFileSet(EditablePackageSet):
except KeyError:
raise SetConfigError(_("Could not find repository '%s'") % match.groupdict()["reponame"])
- if isinstance(directory, unicode):
- # Avoid UnicodeDecodeError raised from
- # os.path.join when called by os.walk.
- directory_unicode = directory
- directory = directory.encode('utf_8', 'replace')
- else:
- directory_unicode = unicode(directory,
- encoding='utf_8', errors='replace')
-
if os.path.isdir(directory):
directory = normalize_path(directory)
+
+ if isinstance(directory, unicode):
+ # Avoid UnicodeDecodeError raised from
+ # os.path.join when called by os.walk.
+ directory_unicode = directory
+ directory = directory.encode('utf_8', 'replace')
+ else:
+ directory_unicode = unicode(directory,
+ encoding='utf_8', errors='replace')
+
for parent, dirs, files in os.walk(directory):
if not isinstance(parent, unicode):
parent = unicode(parent,