Second part of fix for bug #605, make adding and removal of lines not case sensitive

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@10590 e03df62e-2008-0410-955e-edbf42e46eb7
This commit is contained in:
brain 2008-09-22 01:16:15 +00:00
parent 243d8c2907
commit d29a4aea91
2 changed files with 11 additions and 11 deletions

View File

@ -439,7 +439,7 @@ typedef std::map<std::string, XLineFactory*> XLineFactMap;
/** A map of XLines indexed by string
*/
typedef std::map<std::string, XLine *> XLineLookup;
typedef std::map<irc::string, XLine *> XLineLookup;
/** A map of XLineLookup maps indexed by string
*/

View File

@ -165,20 +165,20 @@ IdentHostPair XLineManager::IdentSplit(const std::string &ident_and_host)
bool XLineManager::AddLine(XLine* line, User* user)
{
/*IdentHostPair ih = IdentSplit(hostmask);*/
ServerInstance->BanCache->RemoveEntries(line->type, false); // XXX perhaps remove ELines here?
if (DelLine(line->Displayable(), line->type, user, true))
/* If the line exists, check if its an expired line */
ContainerIter x = lookup_lines.find(line->type);
if (x != lookup_lines.end())
{
/* Line exists, check if its an expired line */
ContainerIter x = lookup_lines.find(line->type);
LookupIter i = x->second.find(line->Displayable());
if (i->second->duration && ServerInstance->Time() > i->second->expiry)
ExpireLine(x, i);
else
return false;
if (i != x->second.end())
{
if (i->second->duration && ServerInstance->Time() > i->second->expiry)
ExpireLine(x, i);
else
return false;
}
}
/*ELine* item = new ELine(ServerInstance, ServerInstance->Time(), duration, source, reason, ih.first.c_str(), ih.second.c_str());*/