mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 20:23:11 +01:00
[sancov] coverage-report-server.py: ServerHandler(): open file as UTF8
Summary: This is nessesary in Python3. Everywhere else we assume that encoding is UTF8. If we don't specify it here, the defaults from the environment will be used, which may result in ASCII decoder being used. And if the file is non-ASCII, then it will crash: ``` File "/usr/local/bin/coverage-report-server.py", line 168, in do_GET for line_no, line in enumerate(f, start=1)]) File "/usr/local/bin/coverage-report-server.py", line 165, in <listcomp> ["<span class='{cls}'>{line} </span>".format( File "/usr/lib/python3.5/encodings/ascii.py", line 26, in decode return codecs.ascii_decode(input, self.errors)[0] UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 106: ordinal not in range(128) ``` Fixes https://bugs.llvm.org/show_bug.cgi?id=33548 Now, how would i add a testcase here? Reviewers: m.ostapenko, kcc Reviewed By: kcc Subscribers: kcc, llvm-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D37661 llvm-svn: 313063
This commit is contained in:
parent
ffe49cfc41
commit
9ced3ef674
@ -160,7 +160,7 @@ class ServerHandler(http.server.BaseHTTPRequestHandler):
|
||||
|
||||
linemap = self.symcov_data.compute_linemap(filename)
|
||||
|
||||
with open(filepath, 'r') as f:
|
||||
with open(filepath, 'r', encoding='utf8') as f:
|
||||
content = "\n".join(
|
||||
["<span class='{cls}'>{line} </span>".format(
|
||||
line=html.escape(line.rstrip()),
|
||||
|
Loading…
Reference in New Issue
Block a user