fix lldb signed/unsiged values (#2624)

* fix lldb signed/unsiged values
pull/2627/head
patryk4815 12 months ago committed by GitHub
parent 8a2debb9d6
commit f0386821c8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -503,7 +503,15 @@ class LLDBValue(pwndbg.dbg_mod.Value):
@override
def __int__(self) -> int:
return self.inner.signed
"""
Logic is copied from lldb.value(self.inner).__int__()
"""
is_num, is_sign = lldb.is_numeric_type(
self.inner.GetType().GetCanonicalType().GetBasicType()
)
if is_num and not is_sign:
return self.inner.GetValueAsUnsigned()
return self.inner.GetValueAsSigned()
@override
def cast(self, type: pwndbg.dbg_mod.Type | Any) -> pwndbg.dbg_mod.Value:

Loading…
Cancel
Save