aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp')
-rw-r--r--src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp b/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
index c8f1f6c8ba..461f31049b 100644
--- a/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
+++ b/src/plugins/clangstaticanalyzer/clangstaticanalyzertool.cpp
@@ -145,7 +145,6 @@ ClangStaticAnalyzerTool::ClangStaticAnalyzerTool()
{{ClangStaticAnalyzerDockId, m_diagnosticView, {}, Perspective::SplitVertical}}
));
- //Debugger::registerAction(Constants::CLANGSTATICANALYZER_RUN_MODE, {});
action = new QAction(tr("Clang Static Analyzer"), this);
action->setToolTip(toolTip);
menu->addAction(ActionManager::registerAction(action, "ClangStaticAnalyzer.Action"),
@@ -211,14 +210,12 @@ static bool dontStartAfterHintForDebugMode(Project *project)
return false;
}
-void ClangStaticAnalyzerTool::startTool()
+void ClangStaticAnalyzerTool::handleWorkerStart(RunWorker *runWorker)
{
- Project *project = SessionManager::startupProject();
+ RunControl *runControl = runWorker->runControl();
+ Project *project = runControl->project();
QTC_ASSERT(project, emit finished(false); return);
- if (dontStartAfterHintForDebugMode(project))
- return;
-
Debugger::selectPerspective(ClangStaticAnalyzerPerspectiveId);
m_diagnosticModel->clear();
setBusyCursor(true);
@@ -230,8 +227,13 @@ void ClangStaticAnalyzerTool::startTool()
m_toolBusy = true;
updateRunActions();
+}
- Target * const target = project->activeTarget();
+void ClangStaticAnalyzerTool::startTool()
+{
+ Project *project = SessionManager::startupProject();
+ QTC_ASSERT(project, return);
+ Target *target = project->activeTarget();
QTC_ASSERT(target, return);
DummyRunConfiguration *& rc = m_runConfigs[target];
if (!rc) {
@@ -245,6 +247,9 @@ void ClangStaticAnalyzerTool::startTool()
connect(SessionManager::instance(), &SessionManager::aboutToRemoveProject, this,
onProjectRemoved, Qt::UniqueConnection);
}
+ if (dontStartAfterHintForDebugMode(project))
+ return;
+
ProjectExplorerPlugin::runRunConfiguration(rc, Constants::CLANGSTATICANALYZER_RUN_MODE);
}