OSDN Git Service

don't clobber GenericMakeStep.BuildTargets during expando syntax upgrade
authorOswald Buddenhagen <oswald.buddenhagen@nokia.com>
Tue, 11 Jan 2011 18:30:53 +0000 (19:30 +0100)
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>
Tue, 11 Jan 2011 18:33:30 +0000 (19:33 +0100)
deal with lists of strings here as well

Task-number: QTCREATORBUG-3260

src/plugins/projectexplorer/userfileaccessor.cpp

index 48cd623..0d67a55 100644 (file)
@@ -1808,7 +1808,7 @@ static const char * const varExpandedKeys[] = {
 };
 
 // Translate old-style ${} var expansions into new-style %{} ones
-static QVariant version8VarNodeHandler(const QVariant &var)
+static QVariant version8VarNodeTransform(const QVariant &var)
 {
     static const char * const vars[] = {
         "absoluteFilePath",
@@ -1845,6 +1845,17 @@ static QVariant version8VarNodeHandler(const QVariant &var)
     return QVariant(str);
 }
 
+static QVariant version8VarNodeHandler(const QVariant &var)
+{
+    if (var.type() != QVariant::List)
+        return version8VarNodeTransform(var);
+
+    QVariantList vl;
+    foreach (const QVariant &svar, var.toList())
+        vl << version8VarNodeTransform(svar);
+    return vl;
+}
+
 QVariantMap Version8Handler::update(Project *, const QVariantMap &map)
 {
     const char * const *p1 = argListKeys;