aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/clangtools
diff options
context:
space:
mode:
authorChristian Stenger <christian.stenger@qt.io>2020-04-23 15:59:14 +0200
committerChristian Stenger <christian.stenger@qt.io>2020-04-24 04:33:23 +0000
commitd02f5664e53df41ff7156eb46069e339479074d2 (patch)
treec1a91d9abb2d058c35dc3725f435bb382e5a674e /src/plugins/clangtools
parentbbed542ec3a231931e15f68332dcbcc624531ce6 (diff)
ClangTools: Avoid accessing deleted run worker
Change-Id: I74b977ede0d153ae4f8d85e03090dfc21facd04b Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'src/plugins/clangtools')
-rw-r--r--src/plugins/clangtools/clangtool.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/clangtools/clangtool.cpp b/src/plugins/clangtools/clangtool.cpp
index 7536f57ad9..87ce2875f7 100644
--- a/src/plugins/clangtools/clangtool.cpp
+++ b/src/plugins/clangtools/clangtool.cpp
@@ -698,6 +698,7 @@ void ClangTool::startTool(ClangTool::FileSelection fileSelection,
connect(m_runWorker, &ClangToolRunWorker::started, this, &ClangTool::onStarted);
connect(m_runWorker, &ClangToolRunWorker::runnerFinished,
this, &ClangTool::updateForCurrentState);
+ connect(m_runControl, &RunControl::destroyed, [this](){ m_runWorker = nullptr; });
// More init and UI update
m_diagnosticFilterModel->setProject(project);
@@ -1038,6 +1039,8 @@ void ClangTool::onRunControlStopped()
void ClangTool::update()
{
updateForInitialState();
+ if (!m_runWorker)
+ return;
updateForCurrentState();
}