summaryrefslogtreecommitdiff
path: root/binaryview.cpp
diff options
context:
space:
mode:
authorGlenn Smith <glenn@vector35.com>2022-04-14 17:25:29 -0400
committerGlenn Smith <glenn@vector35.com>2022-06-21 14:51:14 -0400
commit63e72efd13b31c1d2061b978e2a5f4688e7ba4fd (patch)
treec74a04f126b76051792ab2be294d34e909d003b3 /binaryview.cpp
parent34e5803d69fea165da55da518ffaddfb7344ed00 (diff)
Add Analysis::GetTypeByRef, which searches for types by id/name
Due to bugs, sometimes named types will not have a correct id, leading to bugs
Diffstat (limited to 'binaryview.cpp')
-rw-r--r--binaryview.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/binaryview.cpp b/binaryview.cpp
index 70d866ce..24058619 100644
--- a/binaryview.cpp
+++ b/binaryview.cpp
@@ -3187,6 +3187,15 @@ Ref<Type> BinaryView::GetTypeByName(const QualifiedName& name)
}
+Ref<Type> BinaryView::GetTypeByRef(Ref<NamedTypeReference> ref)
+{
+ BNType* type = BNGetAnalysisTypeByRef(m_object, ref->m_object);
+ if (!type)
+ return nullptr;
+ return new Type(BNNewTypeReference(type));
+}
+
+
Ref<Type> BinaryView::GetTypeById(const string& id)
{
BNType* type = BNGetAnalysisTypeById(m_object, id.c_str());