diff --git a/src/apps/debugger/dwarf/DebugInfoEntries.cpp b/src/apps/debugger/dwarf/DebugInfoEntries.cpp index c8c8852950..b4f620a1bc 100644 --- a/src/apps/debugger/dwarf/DebugInfoEntries.cpp +++ b/src/apps/debugger/dwarf/DebugInfoEntries.cpp @@ -1431,7 +1431,12 @@ status_t DIEPointerToMemberType::AddAttribute_containing_type(uint16 attributeName, const AttributeValue& value) { - fContainingType = dynamic_cast(value.reference); + DebugInfoEntry* type = value.reference; + DIEModifiedType* modifiedType; + while ((modifiedType = dynamic_cast(type)) != NULL) + type = modifiedType->GetType(); + + fContainingType = dynamic_cast(type); return fContainingType != NULL ? B_OK : B_BAD_DATA; }