summaryrefslogtreecommitdiff
path: root/python/demangle.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/demangle.py')
-rw-r--r--python/demangle.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/python/demangle.py b/python/demangle.py
index d570fb78..ce57b601 100644
--- a/python/demangle.py
+++ b/python/demangle.py
@@ -89,7 +89,9 @@ def demangle_ms(archOrPlatform:Union[Architecture, Platform], mangled_name:str,
for i in range(outSize.value):
names.append(outName[i].decode('utf8')) # type: ignore
core.BNFreeDemangledName(ctypes.byref(outName), outSize.value)
- return (types.Type.create(core.BNNewTypeReference(handle)), names)
+ if not handle:
+ return (None, names)
+ return (types.Type.create(handle), names)
return (None, mangled_name)
@@ -126,7 +128,7 @@ def demangle_gnu3(arch, mangled_name, options=None):
core.BNFreeDemangledName(ctypes.byref(outName), outSize.value)
if not handle:
return (None, names)
- return (types.Type.create(core.BNNewTypeReference(handle)), names)
+ return (types.Type.create(handle), names)
return (None, mangled_name)