mirror of
https://github.com/justinian/jsix.git
synced 2025-12-10 00:14:32 -08:00
[scripts] Fix demangle error
On my laptop, a few symbol names raise errors as invalid when attempting to demangle them. This should not stop the rest of the symbol table from building.
This commit is contained in:
@@ -19,16 +19,19 @@ def parse_syms(infile):
|
||||
representing the symbols in the text segment of the binary. Returns
|
||||
a list of (address, symbol_name)."""
|
||||
|
||||
from cxxfilt import demangle
|
||||
from cxxfilt import demangle, InvalidName
|
||||
|
||||
syms = []
|
||||
for line in sys.stdin:
|
||||
addr, t, mangled = line.split()
|
||||
if t not in "tTvVwW": continue
|
||||
|
||||
addr = int(addr, base=16)
|
||||
name = demangle(mangled)
|
||||
syms.append((addr, name))
|
||||
try:
|
||||
addr = int(addr, base=16)
|
||||
name = demangle(mangled)
|
||||
syms.append((addr, name))
|
||||
except InvalidName:
|
||||
pass
|
||||
|
||||
return sorted(syms)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user