From bfad59df64afde2cbb6daa5bd67e971e642c4bbe Mon Sep 17 00:00:00 2001
From: Tobias Hunger <tobias.hunger@nokia.com>
Date: Mon, 30 Aug 2010 12:25:27 +0200
Subject: [PATCH] Make cloning of BuildConfigurations work again

Task-number: QTCREATORBUG-2207
---
 src/plugins/projectexplorer/buildconfiguration.cpp  | 1 +
 src/plugins/projectexplorer/buildsteplist.h         | 3 +--
 src/plugins/projectexplorer/deployconfiguration.cpp | 1 +
 3 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/plugins/projectexplorer/buildconfiguration.cpp b/src/plugins/projectexplorer/buildconfiguration.cpp
index b478faa465f..44f9c084daa 100644
--- a/src/plugins/projectexplorer/buildconfiguration.cpp
+++ b/src/plugins/projectexplorer/buildconfiguration.cpp
@@ -196,6 +196,7 @@ void BuildConfiguration::cloneSteps(BuildConfiguration *source)
     m_stepLists.clear();
     foreach (BuildStepList *bsl, source->m_stepLists) {
         BuildStepList *newBsl = new BuildStepList(this, bsl);
+        newBsl->cloneSteps(bsl);
         m_stepLists.append(newBsl);
     }
 }
diff --git a/src/plugins/projectexplorer/buildsteplist.h b/src/plugins/projectexplorer/buildsteplist.h
index 837756f941a..394c1ebea37 100644
--- a/src/plugins/projectexplorer/buildsteplist.h
+++ b/src/plugins/projectexplorer/buildsteplist.h
@@ -65,6 +65,7 @@ public:
     Target *target() const;
 
     virtual QVariantMap toMap() const;
+    void cloneSteps(BuildStepList *source);
 
 signals:
     void stepInserted(int position);
@@ -73,8 +74,6 @@ signals:
     void stepMoved(int from, int to);
 
 protected:
-    void cloneSteps(BuildStepList *source);
-
     virtual bool fromMap(const QVariantMap &map);
 
 private:
diff --git a/src/plugins/projectexplorer/deployconfiguration.cpp b/src/plugins/projectexplorer/deployconfiguration.cpp
index 7dd79392b44..51cc1e54ddf 100644
--- a/src/plugins/projectexplorer/deployconfiguration.cpp
+++ b/src/plugins/projectexplorer/deployconfiguration.cpp
@@ -129,6 +129,7 @@ void DeployConfiguration::cloneSteps(DeployConfiguration *source)
         return;
     delete m_stepList;
     m_stepList = new BuildStepList(this, source->stepList());
+    m_stepList->cloneSteps(source->stepList());
 }
 
 ///
-- 
GitLab