summaryrefslogtreecommitdiff
path: root/coverage/files.py
diff options
context:
space:
mode:
Diffstat (limited to 'coverage/files.py')
-rw-r--r--coverage/files.py5
1 files changed, 2 insertions, 3 deletions
diff --git a/coverage/files.py b/coverage/files.py
index 855d8157..44997d12 100644
--- a/coverage/files.py
+++ b/coverage/files.py
@@ -67,8 +67,6 @@ def canonical_filename(filename):
filename = f
break
cf = abs_file(filename)
- if env.PY2 and isinstance(cf, str):
- cf = cf.decode(sys.getfilesystemencoding())
CANONICAL_FILENAME_CACHE[filename] = cf
return CANONICAL_FILENAME_CACHE[filename]
@@ -135,7 +133,8 @@ if env.PY2:
def unicode_filename(filename):
"""Return a Unicode version of `filename`."""
if isinstance(filename, str):
- filename = filename.decode(sys.getfilesystemencoding())
+ encoding = sys.getfilesystemencoding() or sys.getdefaultencoding()
+ filename = filename.decode(encoding, "replace")
return filename
else:
@contract(filename='unicode', returns='unicode')