summaryrefslogtreecommitdiff
path: root/examples/triage/imports.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/triage/imports.cpp')
-rw-r--r--examples/triage/imports.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/examples/triage/imports.cpp b/examples/triage/imports.cpp
index 79c1f35e..9102ba27 100644
--- a/examples/triage/imports.cpp
+++ b/examples/triage/imports.cpp
@@ -221,7 +221,18 @@ void ImportsTreeView::importDoubleClicked(const QModelIndex& cur)
{
ViewFrame* viewFrame = ViewFrame::viewFrameForWidget(this);
if (viewFrame)
- viewFrame->navigate("Linear:" + viewFrame->getCurrentDataType(), sym->GetAddress());
+ {
+ if (BinaryNinja::Settings::Instance()->Get<bool>("ui.view.graph.preferred") &&
+ viewFrame->getCurrentBinaryView() &&
+ viewFrame->getCurrentBinaryView()->GetAnalysisFunctionsForAddress(sym->GetAddress()).size() > 0)
+ {
+ viewFrame->navigate("Graph:" + viewFrame->getCurrentDataType(), sym->GetAddress());
+ }
+ else
+ {
+ viewFrame->navigate("Linear:" + viewFrame->getCurrentDataType(), sym->GetAddress());
+ }
+ }
}
}