}
for (timedbans::iterator i = TimedBanList.begin(); i < TimedBanList.end(); i++)
{
- irc::string listitem = i->mask.c_str();
- irc::string target = parameters[2];
+ irc::string listitem = i->mask.c_str();
+ irc::string target = parameters[2];
irc::string listchan = i->channel.c_str();
irc::string targetchan = parameters[0];
if ((listitem == target) && (listchan == targetchan))
char duration[MAXBUF];
snprintf(duration,MAXBUF,"%lu",Srv->CalcDuration(parameters[1]));
std::string mask = parameters[2];
- char *setban[3];
+ char *setban[32];
setban[0] = parameters[0];
setban[1] = "+b";
setban[2] = parameters[2];
List[I_OnDelBan] = List[I_OnBackgroundTimer] = 1;
}
- virtual int OnDelBan(userrec* source, chanrec* chan, std::string banmask)
+ virtual int OnDelBan(userrec* source, chanrec* chan, const std::string &banmask)
{
- for (timedbans::iterator i = TimedBanList.begin(); i < TimedBanList.end(); i++)
- {
- irc::string listitem = banmask.c_str();
- irc::string target = i->mask.c_str();
- if (listitem == target)
- {
- TimedBanList.erase(i);
- break;
- }
- }
+ for (timedbans::iterator i = TimedBanList.begin(); i < TimedBanList.end(); i++)
+ {
+ irc::string listitem = banmask.c_str();
+ irc::string target = i->mask.c_str();
+ if (listitem == target)
+ {
+ TimedBanList.erase(i);
+ break;
+ }
+ }
return 0;
}
temp->fd = FD_MAGIC_NUMBER;
temp->server = "";
Srv->SendMode(setban,3,temp);
- delete temp;
+ DELETE(temp);
}
// we used to delete the item here, but we dont need to as the servermode above does it for us,
break;