@@ -263,9 +263,10 @@ private static String doSubstVars(
263263 // Using the start and stop delimiter indices, extract
264264 // the first, deepest nested variable placeholder.
265265 String variable = val .substring (startDelim + DELIM_START .length (), stopDelim );
266+ String org = variable ;
266267
267268 String substValue = processSubstitution (
268- variable , cycleMap , configProps , callback , postprocessor , defaultsToEmptyString );
269+ variable , org , cycleMap , configProps , callback , postprocessor , defaultsToEmptyString );
269270
270271 // Append the leading characters, the substituted value of
271272 // the variable, and the trailing characters to get the new
@@ -284,6 +285,7 @@ private static String doSubstVars(
284285
285286 private static String processSubstitution (
286287 String variable ,
288+ String org ,
287289 Set <String > cycleMap ,
288290 Map <String , String > configProps ,
289291 UnaryOperator <String > callback ,
@@ -326,7 +328,7 @@ private static String processSubstitution(
326328
327329 // Process the operator value through substitution if it contains variables
328330 String processedOpValue =
329- doSubstVars (opValue , variable , cycleMap , configProps , callback , postprocessor , defaultsToEmptyString );
331+ doSubstVars (opValue , org , cycleMap , configProps , callback , postprocessor , defaultsToEmptyString );
330332
331333 // Apply the operator
332334 if (":+" .equals (op )) {
0 commit comments