diff options
author | Augusto Noronha <augusto2112@me.com> | 2022-10-26 14:53:19 -0700 |
---|---|---|
committer | Augusto Noronha <augusto2112@me.com> | 2022-10-28 15:04:24 -0700 |
commit | b3b517d572391d9799d1f29bddd66e2bad1acb54 (patch) | |
tree | 91c9d4d8761e662f5fc97b9fdd0b81d3d680a08a /lldb/examples | |
parent | dd109f61597b4ed42e18a88c06da0553bfeb16a8 (diff) | |
download | llvm-b3b517d572391d9799d1f29bddd66e2bad1acb54.tar.gz |
[lldb] Explicitly open file to write with utf-8 encoding in crashlog.py
The python "open" function will use the default encoding for the
locale (the result of "locale.getpreferredencoding()"). Explicitly set
the locale to utf-8 when opening the crashlog for writing, as there may
be non-ascii symbols in there (for example, Swift uses "τ" to indicate
generic parameters).
rdar://101402755
Differential Revision: https://reviews.llvm.org/D136798
Diffstat (limited to 'lldb/examples')
-rwxr-xr-x | lldb/examples/python/crashlog.py | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lldb/examples/python/crashlog.py b/lldb/examples/python/crashlog.py index eb43e07d27f4..e80ecd91579a 100755 --- a/lldb/examples/python/crashlog.py +++ b/lldb/examples/python/crashlog.py @@ -449,7 +449,7 @@ class JSONCrashLogParser(CrashLogParser): head, _, tail = buffer.partition('\n') return json.loads(tail) - with open(path, 'r') as f: + with open(path, 'r', encoding='utf-8') as f: buffer = f.read() try: return parse_json(buffer) @@ -644,7 +644,7 @@ class TextCrashLogParser(CrashLogParser): } def parse(self): - with open(self.path,'r') as f: + with open(self.path,'r', encoding='utf-8') as f: lines = f.read().splitlines() for line in lines: @@ -865,7 +865,7 @@ def save_crashlog(debugger, command, exe_ctx, result, dict): result.PutCString( "error: invalid arguments, a single output file is the only valid argument") return - out_file = open(args[0], 'w') + out_file = open(args[0], 'w', encoding='utf-8') if not out_file: result.PutCString( "error: failed to open file '%s' for writing...", |