diff options
author | Nikolai Kosjar <[email protected]> | 2014-10-28 09:44:26 +0100 |
---|---|---|
committer | Nikolai Kosjar <[email protected]> | 2014-10-28 11:13:05 +0200 |
commit | 4acbedf841436b88843c7c18dfdef711ad9c00a2 (patch) | |
tree | 02a917d9bce3787e400f25c515407befe7bae3ce /plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp | |
parent | cb49d04f460cea9beba84587a710efac78189b69 (diff) |
RunControl: Fix 'Stop'
Terminate/kill current runners, so that the GUI will reflect that quite
soon and not if all runners finished.
Change-Id: I83eed6ecf1678444a8b38bab6cc05d8694a4eb49
Reviewed-by: Nikolai Kosjar <[email protected]>
Diffstat (limited to 'plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp')
-rw-r--r-- | plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp b/plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp index e3c63625bf7..ed8efb93f84 100644 --- a/plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp +++ b/plugins/clangstaticanalyzer/clangstaticanalyzerrunner.cpp @@ -84,8 +84,13 @@ ClangStaticAnalyzerRunner::ClangStaticAnalyzerRunner(const QString &clangExecuta ClangStaticAnalyzerRunner::~ClangStaticAnalyzerRunner() { const QProcess::ProcessState processState = m_process.state(); - if (processState == QProcess::Starting || processState == QProcess::Running) - m_process.kill(); + if (processState == QProcess::Starting || processState == QProcess::Running) { + m_process.terminate(); + if (!m_process.waitForFinished(500)) { + m_process.kill(); + m_process.waitForFinished(); + } + } } bool ClangStaticAnalyzerRunner::run(const QString &filePath, const QStringList &compilerOptions) |