diff options
| author | Josh Ferrell <josh@vector35.com> | 2025-12-24 12:10:14 -0500 |
|---|---|---|
| committer | Josh Ferrell <josh@vector35.com> | 2025-12-24 12:10:14 -0500 |
| commit | 1c0569fbe6e9f9f390d22062425fbf95f5c56576 (patch) | |
| tree | e2a6ecb50cc1932dc914956320f8423165e481b7 /lang/c | |
| parent | e2d75d9d99b2335855cc3e409508bbde1e8e6761 (diff) | |
Fix crash when displaying variable with null type in pseudo-c and pseudo-rust
Diffstat (limited to 'lang/c')
| -rw-r--r-- | lang/c/pseudoc.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lang/c/pseudoc.cpp b/lang/c/pseudoc.cpp index 5a67eb40..592e224f 100644 --- a/lang/c/pseudoc.cpp +++ b/lang/c/pseudoc.cpp @@ -554,7 +554,7 @@ void PseudoCFunction::AppendFieldTextTokens(const HighLevelILInstruction& instr, const auto type = GetFieldType(srcExpr, false); const auto fieldDisplayType = GetFieldDisplayType(type, fieldOffset, memberIndex, false); - if (fieldDisplayType == FieldDisplayOffset) + if (type && fieldDisplayType == FieldDisplayOffset) { if (!addrOf) tokens.Append(OperationToken, "*"); @@ -656,7 +656,7 @@ void PseudoCFunction::AppendFieldTextTokens(const HighLevelILInstruction& instr, if (memberIndex != BN_INVALID_EXPR) memberIndexHint = memberIndex; - if (type->GetStructure()->ResolveMemberOrBaseMember( + if (type && type->GetStructure()->ResolveMemberOrBaseMember( GetFunction()->GetView(), fieldOffset, 0, [&](NamedTypeReference*, Structure* s, size_t memberIndex, uint64_t structOffset, uint64_t adjustedOffset, const StructureMember& member) { |
