diff options
Diffstat (limited to 'plugins/rtti/itanium.cpp')
| -rw-r--r-- | plugins/rtti/itanium.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/plugins/rtti/itanium.cpp b/plugins/rtti/itanium.cpp index 018f8c6d..c2f1089b 100644 --- a/plugins/rtti/itanium.cpp +++ b/plugins/rtti/itanium.cpp @@ -561,6 +561,9 @@ std::optional<VirtualFunctionTableInfo> ItaniumRTTIProcessor::ProcessVFT(uint64_ std::vector<VirtualFunctionInfo> virtualFunctions = {}; while (true) { + uint64_t readOffset = reader.GetOffset(); + if (!m_view->IsValidOffset(readOffset)) + break; uint64_t vFuncAddr = reader.ReadPointer(); auto funcs = m_view->GetAnalysisFunctionsForAddress(vFuncAddr); if (funcs.empty()) |
