Fix CIRCNetwork::FindChans() and FindQueries() to be case-insensitive

The playback module failed to clear a buffer, because it tried to
clear "NickServ" whereas ZNC had internally stored it has "nickserv".
This commit is contained in:
J-P Nurmi
2015-02-03 10:11:47 +01:00
parent 5f9ad5cc87
commit 7345a6ee3a
3 changed files with 101 additions and 3 deletions
+4 -2
View File
@@ -787,8 +787,9 @@ CChan* CIRCNetwork::FindChan(CString sName) const {
std::vector<CChan*> CIRCNetwork::FindChans(const CString& sWild) const {
std::vector<CChan*> vChans;
vChans.reserve(m_vChans.size());
const CString sLower = sWild.AsLower();
for (std::vector<CChan*>::const_iterator it = m_vChans.begin(); it != m_vChans.end(); ++it) {
if ((*it)->GetName().WildCmp(sWild))
if ((*it)->GetName().AsLower().WildCmp(sLower))
vChans.push_back(*it);
}
return vChans;
@@ -946,8 +947,9 @@ CQuery* CIRCNetwork::FindQuery(const CString& sName) const {
std::vector<CQuery*> CIRCNetwork::FindQueries(const CString& sWild) const {
std::vector<CQuery*> vQueries;
vQueries.reserve(m_vQueries.size());
const CString sLower = sWild.AsLower();
for (std::vector<CQuery*>::const_iterator it = m_vQueries.begin(); it != m_vQueries.end(); ++it) {
if ((*it)->GetName().WildCmp(sWild))
if ((*it)->GetName().AsLower().WildCmp(sLower))
vQueries.push_back(*it);
}
return vQueries;