From add68369a59af90f8b4203b53695521c6d657d6b Mon Sep 17 00:00:00 2001 From: SmallJoker Date: Tue, 22 Sep 2020 18:40:34 +0200 Subject: Settings: Fix unittest memory leak, change input types --- src/settings.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/settings.cpp') diff --git a/src/settings.cpp b/src/settings.cpp index 473a216bf..28b72c4e3 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -822,22 +822,22 @@ bool Settings::setDefault(const std::string &name, const std::string &value) } -bool Settings::setGroup(const std::string &name, Settings *group) +bool Settings::setGroup(const std::string &name, const Settings &group) { // Settings must own the group pointer // avoid double-free by copying the source Settings *copy = new Settings(); - *copy = *group; + *copy = group; return setEntry(name, ©, true, false); } -bool Settings::setGroupDefault(const std::string &name, Settings *group) +bool Settings::setGroupDefault(const std::string &name, const Settings &group) { // Settings must own the group pointer // avoid double-free by copying the source Settings *copy = new Settings(); - *copy = *group; + *copy = group; return setEntry(name, ©, true, true); } @@ -1060,7 +1060,7 @@ void Settings::overrideDefaults(Settings *other) { for (const auto &setting : other->m_settings) { if (setting.second.is_group) { - setGroupDefault(setting.first, setting.second.group); + setGroupDefault(setting.first, *setting.second.group); continue; } const FlagDesc *flagdesc = getFlagDescFallback(setting.first); -- cgit v1.2.3