Valgrind: Simplify device setup and handling

Make isLocal() less intrusively used and correct.  Use the stored device
more often, also handle errors more quickly.

Change-Id: I146d1f5788ea79d0a9d7b058c81908d451cf00d0
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
This commit is contained in:
hjk
2016-01-30 01:38:58 +01:00
parent d14257736e
commit dcfb622126
13 changed files with 41 additions and 96 deletions

View File

@@ -52,11 +52,10 @@ namespace Valgrind {
namespace Internal {
ValgrindRunControl::ValgrindRunControl(RunConfiguration *runConfiguration, Core::Id runMode)
: AnalyzerRunControl(runConfiguration, runMode),
m_settings(0),
m_isStopping(false)
: AnalyzerRunControl(runConfiguration, runMode)
{
m_isCustomStart = false;
QTC_ASSERT(runConfiguration, return);
setRunnable(runConfiguration->runnable());
if (runConfiguration)
if (IRunConfigurationAspect *aspect = runConfiguration->extraAspect(ANALYZER_VALGRIND_SETTINGS))
@@ -87,8 +86,8 @@ bool ValgrindRunControl::startEngine()
ValgrindRunner *run = runner();
run->setValgrindExecutable(m_settings->valgrindExecutable());
run->setValgrindArguments(genericToolArguments() + toolArguments());
run->setConnectionParameters(connection().as<AnalyzerConnection>().connParams);
run->setUseStartupProject(!m_isCustomStart);
QTC_ASSERT(!device().isNull(), return false);
run->setDevice(device());
run->setDebuggee(runnable().as<StandardRunnable>());
connect(run, &ValgrindRunner::processOutputReceived,