diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-08-03 17:15:45 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-08-03 17:15:45 +0200 |
| commit | 871c81ac1aa6b61e8af1cbbcf7c04de7b6659248 (patch) | |
| tree | 57dc86cd8ce914a5687d9ad2523e1781948cf39d /src/config/ConfigManager.cpp | |
| parent | 36e563c79c9acf26e49187f932c8617c08309b0e (diff) | |
erase instead of overwriting monitor rules
Diffstat (limited to 'src/config/ConfigManager.cpp')
| -rw-r--r-- | src/config/ConfigManager.cpp | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp index de8e87af..b8c0ab6e 100644 --- a/src/config/ConfigManager.cpp +++ b/src/config/ConfigManager.cpp @@ -433,13 +433,7 @@ void CConfigManager::handleMonitor(const std::string& command, const std::string return; } - // overwrite if exists - for (auto& r : m_dMonitorRules) { - if (r.name == newrule.name) { - r = newrule; - return; - } - } + m_dMonitorRules.erase(std::remove_if(m_dMonitorRules.begin(), m_dMonitorRules.end(), [&](const auto& other) { return other.name == newrule.name; })); m_dMonitorRules.push_back(newrule); @@ -474,13 +468,7 @@ void CConfigManager::handleMonitor(const std::string& command, const std::string return; } - // overwrite if exists - for (auto& r : m_dMonitorRules) { - if (r.name == newrule.name) { - r = newrule; - return; - } - } + m_dMonitorRules.erase(std::remove_if(m_dMonitorRules.begin(), m_dMonitorRules.end(), [&](const auto& other) { return other.name == newrule.name; })); m_dMonitorRules.push_back(newrule); } |
