diff --git a/src/plugins/projectexplorer/target.cpp b/src/plugins/projectexplorer/target.cpp index 78c8fad0c2d..b4c46d8e324 100644 --- a/src/plugins/projectexplorer/target.cpp +++ b/src/plugins/projectexplorer/target.cpp @@ -177,7 +177,7 @@ void Target::changeRunConfigurationEnabled() void Target::onBuildDirectoryChanged() { BuildConfiguration *bc = qobject_cast(sender()); - if (bc) + if (bc && activeBuildConfiguration() == bc) emit buildDirectoryChanged(); } @@ -238,6 +238,8 @@ void Target::addBuildConfiguration(BuildConfiguration *configuration) SLOT(changeEnvironment())); connect(configuration, SIGNAL(enabledChanged()), this, SLOT(changeBuildConfigurationEnabled())); + connect(configuration, SIGNAL(buildDirectoryChanged()), + SLOT(onBuildDirectoryChanged())); if (!activeBuildConfiguration()) setActiveBuildConfiguration(configuration); diff --git a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp index 7ed940489eb..f489f3b1a05 100644 --- a/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp +++ b/src/plugins/qbsprojectmanager/qbsbuildconfiguration.cpp @@ -65,7 +65,6 @@ QbsBuildConfiguration::QbsBuildConfiguration(ProjectExplorer::Target *target) : connect(project(), SIGNAL(projectParsingStarted()), this, SIGNAL(enabledChanged())); connect(project(), SIGNAL(projectParsingDone(bool)), this, SIGNAL(enabledChanged())); - connect(this, SIGNAL(buildDirectoryChanged()), target, SLOT(onBuildDirectoryChanged())); ProjectExplorer::BuildStepList *bsl = stepList(Core::Id(ProjectExplorer::Constants::BUILDSTEPS_BUILD)); connect(bsl, SIGNAL(stepInserted(int)), this, SLOT(buildStepInserted(int)));