summaryrefslogtreecommitdiff
path: root/plugins/msvc_rtti/rtti.cpp
diff options
context:
space:
mode:
authorMason Reed <mason@vector35.com>2024-11-18 15:18:50 -0500
committerAlexander Taylor <alex@vector35.com>2024-11-18 15:22:26 -0500
commit43870ac3825272c917420b9063d068d9683675dd (patch)
treed6e2402bdd10a44f20fb46fad507ce3fd9a6015a /plugins/msvc_rtti/rtti.cpp
parent8b6e85a15720653eb96e6d840cd0b543a9d30a55 (diff)
MSVC RTTI: Make VFT type adjustable
This was the original behavior before the fixes for PDB support
Diffstat (limited to 'plugins/msvc_rtti/rtti.cpp')
-rw-r--r--plugins/msvc_rtti/rtti.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/plugins/msvc_rtti/rtti.cpp b/plugins/msvc_rtti/rtti.cpp
index b84ffff4..c2832c1e 100644
--- a/plugins/msvc_rtti/rtti.cpp
+++ b/plugins/msvc_rtti/rtti.cpp
@@ -605,14 +605,13 @@ std::optional<VirtualFunctionTableInfo> MicrosoftRTTIProcessor::ProcessVFT(uint6
}
m_view->DefineType(typeId, vftTypeName,
Confidence(TypeBuilder::StructureType(vftBuilder.Finalize()).Finalize(), RTTI_CONFIDENCE));
- vftType = m_view->GetTypeById(typeId);
}
auto vftName = fmt::format("{}::`vftable'", classInfo.className);
if (classInfo.baseClassName.has_value())
vftName += fmt::format("{{for `{}'}}", classInfo.baseClassName.value());
m_view->DefineAutoSymbol(new Symbol{DataSymbol, vftName, vftAddr});
- m_view->DefineDataVariable(vftAddr, Confidence(vftType, RTTI_CONFIDENCE));
+ m_view->DefineDataVariable(vftAddr, Confidence(Type::NamedType(m_view, vftTypeName), RTTI_CONFIDENCE));
return vftInfo;
}