From 66d0bcafec92cba46d8dade72b2ce8e196d30914 Mon Sep 17 00:00:00 2001 From: Mason Reed Date: Thu, 9 Apr 2026 12:00:07 -0700 Subject: [PATCH] [RTTI] Fix Itanium RTTI scan failing to symbolize objects with extern typeinfo The issue stems from the gnu3 demangler changing in https://github.com/Vector35/binaryninja-api/commit/260ca61d94134b6743807e29f64b5ce4f6918d73 Fixes https://github.com/Vector35/binaryninja-api/issues/8080 --- plugins/rtti/itanium.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/plugins/rtti/itanium.cpp b/plugins/rtti/itanium.cpp index 69501021d..c805343de 100644 --- a/plugins/rtti/itanium.cpp +++ b/plugins/rtti/itanium.cpp @@ -446,9 +446,11 @@ std::optional ItaniumRTTIProcessor::ProcessRTTI(uint64_t objectAddr) return std::nullopt; auto symName = sym->GetShortName(); // Remove type info prefix. - if (symName.rfind("_typeinfo_for_", 0) != 0) - return std::nullopt; - return symName.substr(14); + if (symName.rfind("_typeinfo_for_", 0) == 0) + return symName.substr(14); + if (symName.rfind("typeinfo_for_", 0) == 0) + return symName.substr(13); + return std::nullopt; }; if (typeInfoVariant == TIVSIClass)