summaryrefslogtreecommitdiff
path: root/lang/c
diff options
context:
space:
mode:
authorJosh Ferrell <josh@vector35.com>2025-12-24 12:10:14 -0500
committerJosh Ferrell <josh@vector35.com>2025-12-24 12:10:14 -0500
commit1c0569fbe6e9f9f390d22062425fbf95f5c56576 (patch)
treee2a6ecb50cc1932dc914956320f8423165e481b7 /lang/c
parente2d75d9d99b2335855cc3e409508bbde1e8e6761 (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.cpp4
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) {