summaryrefslogtreecommitdiff
path: root/python/demangle.py
diff options
context:
space:
mode:
authorJordan Wiens <github@psifertex.com>2025-09-26 15:55:40 -0400
committerJordan <github@psifertex.com>2025-10-01 15:19:28 -0400
commite69f1b5525b6bb6d8cd08849537dba890c016b93 (patch)
treeae7aa18206820c4199f5a948f43f42b0a396071c /python/demangle.py
parent420d622f83ad687d5848211f52e2e21693a44a13 (diff)
better handling for when utf8 decoding fails
Diffstat (limited to 'python/demangle.py')
-rw-r--r--python/demangle.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/python/demangle.py b/python/demangle.py
index 714f76cc..80916962 100644
--- a/python/demangle.py
+++ b/python/demangle.py
@@ -131,7 +131,10 @@ def demangle_llvm(mangled_name: str, options: Optional[Union[bool, binaryview.Bi
)
):
for i in range(outSize.value):
- names.append(outName[i].decode('utf8')) # type: ignore
+ try:
+ names.append(outName[i].decode('utf8')) # type: ignore
+ except UnicodeDecodeError:
+ names.append(outName[i].decode('charmap')) # type: ignore
core.BNFreeDemangledName(ctypes.byref(outName), outSize.value)
return names
return None