diff --git a/src/rule_with_operator.cc b/src/rule_with_operator.cc index c79199d0..2166cbd3 100644 --- a/src/rule_with_operator.cc +++ b/src/rule_with_operator.cc @@ -166,8 +166,15 @@ inline void RuleWithOperator::getFinalVars(variables::Variables *vars, if (std::find_if(trans->m_ruleRemoveTargetById.begin(), trans->m_ruleRemoveTargetById.end(), [&, variable, this](const auto &m) -> bool { - return m.first == m_ruleId - && m.second == *variable->m_fullName.get(); + const auto& str1 = m.second; + const auto& str2 = *variable->m_fullName.get(); + return m.first == m_ruleId && + str1.size() == str2.size() && + std::equal(str1.begin(), str1.end(), str2.begin(), + [](char a, char b) { + return std::tolower(static_cast(a)) == + std::tolower(static_cast(b)); + }); // end-of std::equal }) != trans->m_ruleRemoveTargetById.end()) { continue; }