diff --git a/src/plugins/genericprojectmanager/genericmakestep.cpp b/src/plugins/genericprojectmanager/genericmakestep.cpp
index 0ce416f2f5a71e5cdbea0fe51454616b18c50080..57e648d455e4c5fa1440526a7c91d9fd2eb39b3c 100644
--- a/src/plugins/genericprojectmanager/genericmakestep.cpp
+++ b/src/plugins/genericprojectmanager/genericmakestep.cpp
@@ -142,9 +142,10 @@ void GenericMakeStep::setBuildTarget(const QString &buildConfiguration, const QS
 {
     QStringList old = value(buildConfiguration, "buildTargets").toStringList();
     if (on && !old.contains(target))
-        setValue(buildConfiguration, "buildTargets", old << target);
+        old << target;
     else if(!on && old.contains(target))
-        setValue(buildConfiguration, "buildTargets", old.removeOne(target));
+        old.removeOne(target);
+    setValue(buildConfiguration, "buildTargets", old);
 }
 
 //