diff --git a/src/plugins/projectexplorer/target.cpp b/src/plugins/projectexplorer/target.cpp index 78c8fad0c2db60b12f4876cbce98b9afcd312abb..b4c46d8e324f47cb74fb08dff1e98bd5ba01e0df 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<BuildConfiguration *>(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 7ed940489ebd0ffb5ad14f02810d0fa11bc12512..f489f3b1a05ada4a463aa16ba720007afcce90a0 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)));