Skip to content

Commit 526c340

Browse files
committed
Slightly improved ExpandPropsInString
1 parent 62d90e5 commit 526c340

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

properties.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -251,16 +251,17 @@ func (m Map) SubTree(rootKey string) Map {
251251
//
252252
// Each marker is replaced by the corresponding value of the Map.
253253
// The values in the Map may contains other markers, they are evaluated
254-
// recursively.
254+
// recursively up to 10 times.
255255
func (m Map) ExpandPropsInString(str string) string {
256-
replaced := true
257-
for i := 0; i < 10 && replaced; i++ {
258-
replaced = false
256+
for i := 0; i < 10; i++ {
257+
newStr := str
259258
for key, value := range m {
260-
newStr := strings.Replace(str, "{"+key+"}", value, -1)
261-
replaced = replaced || str != newStr
262-
str = newStr
259+
newStr = strings.Replace(newStr, "{"+key+"}", value, -1)
263260
}
261+
if str == newStr {
262+
break
263+
}
264+
str = newStr
264265
}
265266
return str
266267
}

0 commit comments

Comments
 (0)