summaryrefslogtreecommitdiff
path: root/coverage/phystokens.py
diff options
context:
space:
mode:
authorNed Batchelder <ned@nedbatchelder.com>2015-10-25 17:40:09 -0400
committerNed Batchelder <ned@nedbatchelder.com>2015-10-25 17:40:09 -0400
commitc370442bea855f0f87217db190760629fe559150 (patch)
tree3fc7a69e49849c5d95f5ee3c3163cdede38cec45 /coverage/phystokens.py
parent2825bdb540f1b14ae9855e57ecb0b1e4d1098894 (diff)
downloadpython-coveragepy-c370442bea855f0f87217db190760629fe559150.tar.gz
Properly handle filenames with non-ASCII characters. #432
Diffstat (limited to 'coverage/phystokens.py')
-rw-r--r--coverage/phystokens.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/coverage/phystokens.py b/coverage/phystokens.py
index 203d41f..f5bd0bc 100644
--- a/coverage/phystokens.py
+++ b/coverage/phystokens.py
@@ -6,6 +6,7 @@
import codecs
import keyword
import re
+import sys
import token
import tokenize
@@ -281,6 +282,8 @@ def compile_unicode(source, filename, mode):
"""
source = neuter_encoding_declaration(source)
+ if env.PY2 and isinstance(filename, unicode):
+ filename = filename.encode(sys.getfilesystemencoding(), "replace")
code = compile(source, filename, mode)
return code