libutil/config: fix appendable options not getting marked as overridden
Commit4dbbd721eb
intended to mark all settings as overridden when they are. Unfortunately, due to an oversight, this marking was accidentally performed in the implementation details of non-appendable options. Move it to the common codepath so that it works for appendable options too. Fixes: #573 Change-Id:Idc3402bac48b19d832acd9b553e16e5791470c26
This commit is contained in:
parent
116895acb1
commit
08a362a540
|
@ -64,8 +64,6 @@ void BaseSetting<T>::appendOrSet(T newValue, bool append, const ApplyConfigOptio
|
||||||
!trait::appendable,
|
!trait::appendable,
|
||||||
"using default `appendOrSet` implementation with an appendable type");
|
"using default `appendOrSet` implementation with an appendable type");
|
||||||
assert(!append);
|
assert(!append);
|
||||||
|
|
||||||
overridden = true;
|
|
||||||
value = std::move(newValue);
|
value = std::move(newValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -77,6 +75,7 @@ void BaseSetting<T>::set(const std::string & str, bool append, const ApplyConfig
|
||||||
if (deprecated && (append || parsed != value)) {
|
if (deprecated && (append || parsed != value)) {
|
||||||
warn("deprecated setting '%s' found (set to '%s')", name, str);
|
warn("deprecated setting '%s' found (set to '%s')", name, str);
|
||||||
}
|
}
|
||||||
|
overridden = true;
|
||||||
appendOrSet(std::move(parsed), append, options);
|
appendOrSet(std::move(parsed), append, options);
|
||||||
} else {
|
} else {
|
||||||
assert(experimentalFeature);
|
assert(experimentalFeature);
|
||||||
|
|
Loading…
Reference in a new issue