From dacf13948ea65f0a944b8e07fae8d9cd1a6a1273 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Tue, 28 Feb 2017 11:31:09 +0100 Subject: [PATCH] QbsProjectManager: Fix updating of run environment When the build environment was changed, the run environment widget would not update. Change-Id: I8a318d86b5ac56ca9233cf4c694ca3c9f88870ed Reviewed-by: Joerg Bornemann --- src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp index 4b85e79f936..6730963ab20 100644 --- a/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp +++ b/src/plugins/qbsprojectmanager/qbsrunconfiguration.cpp @@ -112,9 +112,14 @@ QbsRunConfiguration::QbsRunConfiguration(Target *parent, Core::Id id) : m_uniqueProductName(uniqueProductNameFromId(id)), m_currentBuildStepList(0) { - addExtraAspect(new LocalEnvironmentAspect(this, [](RunConfiguration *rc, Environment &env) { - static_cast(rc)->addToBaseEnvironment(env); - })); + auto * const envAspect = new LocalEnvironmentAspect(this, + [](RunConfiguration *rc, Environment &env) { + static_cast(rc)->addToBaseEnvironment(env); + } + ); + addExtraAspect(envAspect); + connect(static_cast(parent->project()), &QbsProject::parsingFinished, this, + [envAspect]() { envAspect->buildEnvironmentHasChanged(); }); addExtraAspect(new ArgumentsAspect(this, QStringLiteral("Qbs.RunConfiguration.CommandLineArguments"))); addExtraAspect(new WorkingDirectoryAspect(this, QStringLiteral("Qbs.RunConfiguration.WorkingDirectory")));