summaryrefslogtreecommitdiffstats
path: root/pym/portage/env
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-08-06 05:35:14 +0000
committerZac Medico <zmedico@gentoo.org>2009-08-06 05:35:14 +0000
commitc7df44e774a0c1400b4c91123146fa4396644f91 (patch)
tree2e0ebcb622e89812a6fa28100b761478d4abf62f /pym/portage/env
parentb6eddf7f5a4cb032d217f7ef0b6da028d3f230bc (diff)
downloadportage-c7df44e774a0c1400b4c91123146fa4396644f91.tar.gz
portage-c7df44e774a0c1400b4c91123146fa4396644f91.tar.bz2
portage-c7df44e774a0c1400b4c91123146fa4396644f91.zip
Do not pass unicode strings into os.walk calls, since it can cause
internal os.path.join calls to raise UnicodeDecodeError. svn path=/main/trunk/; revision=13926
Diffstat (limited to 'pym/portage/env')
-rw-r--r--pym/portage/env/loaders.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/pym/portage/env/loaders.py b/pym/portage/env/loaders.py
index 7b4d72721..854304125 100644
--- a/pym/portage/env/loaders.py
+++ b/pym/portage/env/loaders.py
@@ -39,6 +39,12 @@ def RecursiveFileLoader(filename):
@rtype: list
@returns: List of files to process
"""
+
+ if isinstance(filename, unicode):
+ # Avoid UnicodeDecodeError raised from
+ # os.path.join when called by os.walk.
+ filename = filename.encode('utf_8', 'replace')
+
try:
st = os.stat(filename)
except OSError: