diff options
-rw-r--r-- | src/libs/installer/component.cpp | 10 | ||||
-rw-r--r-- | src/libs/installer/packagemanagercore.cpp | 7 |
2 files changed, 10 insertions, 7 deletions
diff --git a/src/libs/installer/component.cpp b/src/libs/installer/component.cpp index 75a41ea31..963dd55c6 100644 --- a/src/libs/installer/component.cpp +++ b/src/libs/installer/component.cpp @@ -245,14 +245,16 @@ QString Component::value(const QString &key, const QString &defaultValue) const */ void Component::setValue(const QString &key, const QString &value) { - if (d->m_vars.value(key) == value) + QString normalizedValue = d->m_core->replaceVariables(value); + + if (d->m_vars.value(key) == normalizedValue) return; if (key == scName) - d->m_componentName = value; + d->m_componentName = normalizedValue; - d->m_vars[key] = value; - emit valueChanged(key, value); + d->m_vars[key] = normalizedValue; + emit valueChanged(key, normalizedValue); } /*! diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp index fa7e88a04..96fabdebe 100644 --- a/src/libs/installer/packagemanagercore.cpp +++ b/src/libs/installer/packagemanagercore.cpp @@ -1380,11 +1380,12 @@ QString PackageManagerCore::value(const QString &key, const QString &defaultValu */ void PackageManagerCore::setValue(const QString &key, const QString &value) { - if (d->m_vars.value(key) == value) + QString normalizedValue = replaceVariables(value); + if (d->m_vars.value(key) == normalizedValue) return; - d->m_vars.insert(key, value); - emit valueChanged(key, value); + d->m_vars.insert(key, normalizedValue); + emit valueChanged(key, normalizedValue); } /*! |