From bb85fcdbb51186eba47ea11292b54e03e9ed1e80 Mon Sep 17 00:00:00 2001
From: Aurindam Jana <aurindam.jana@digia.com>
Date: Wed, 22 May 2013 22:49:45 +0200
Subject: [PATCH] CustomWizardParameters: Parsing of replacement fields

Parse each possible pair of %%.

Change-Id: If1f504c16cd7c3b171a1df62efd2927fd28ab4fa
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
---
 .../projectexplorer/customwizard/customwizardparameters.cpp  | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp b/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
index 241b40a0bf4..d44da8dcd86 100644
--- a/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
+++ b/src/plugins/projectexplorer/customwizard/customwizardparameters.cpp
@@ -850,14 +850,13 @@ bool replaceFieldHelper(ValueStringTransformation transform,
         int nextPos = s->indexOf(delimiter, pos + 1);
         if (nextPos == -1)
             break;
-        nextPos++; // Point past 2nd delimiter
-        if (nextPos == pos + 2) {
+        if (nextPos == pos + 1) {
             pos = nextPos; // Skip '%%'
             continue;
         }
         // Evaluate field specification for modifiers
         // "%field:l%"
-        QString fieldSpec = s->mid(pos + 1, nextPos - pos - 2);
+        QString fieldSpec = s->mid(pos + 1, nextPos - pos - 1);
         const int fieldSpecSize = fieldSpec.size();
         char modifier = '\0';
         if (fieldSpecSize >= 3 && fieldSpec.at(fieldSpecSize - 2) == modifierDelimiter) {
-- 
GitLab