From a16e0b765981932b02d5a66ee1a635bb83285b73 Mon Sep 17 00:00:00 2001 From: peri4 Date: Tue, 9 Jul 2024 21:47:18 +0300 Subject: [PATCH] substitution fix --- libs/main/serialization/pivaluetree_conversions.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libs/main/serialization/pivaluetree_conversions.cpp b/libs/main/serialization/pivaluetree_conversions.cpp index 2ec6e7e7..f3419650 100644 --- a/libs/main/serialization/pivaluetree_conversions.cpp +++ b/libs/main/serialization/pivaluetree_conversions.cpp @@ -194,6 +194,8 @@ PIValueTree PIValueTreeConversions::fromText(PIIODevice * device) { comm.trim(); line.cutRight(1).trim(); } + for (const auto & s: substitutions) + line.replaceAll("${" + s.first + "}", s.second); ind = line.find('='); if (ind > 0) { path = prefix; @@ -221,10 +223,7 @@ PIValueTree PIValueTreeConversions::fromText(PIIODevice * device) { } PIValueTree & leaf(ret[path]); leaf.setComment(comm); - line = unmask(line); - for (const auto & s: substitutions) - line.replaceAll("${" + s.first + "}", s.second); - leaf.setValue(line); + leaf.setValue(unmask(line)); substitutions[path.join('.')] = leaf.value().toString(); if (!path.contains(_attribute_)) if (!leaf.contains({_attribute_, "type"})) leaf[_attribute_].addChild({"type", type});