diff options
Diffstat (limited to 'src/modules/m_timedbans.cpp')
-rw-r--r-- | src/modules/m_timedbans.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/modules/m_timedbans.cpp b/src/modules/m_timedbans.cpp index 400ec098e..6325fbb4d 100644 --- a/src/modules/m_timedbans.cpp +++ b/src/modules/m_timedbans.cpp @@ -166,9 +166,9 @@ class ModuleTimedBans : public Module { cr->WriteChannelWithServ(ServerInstance->Config->ServerName, "NOTICE %s :Timed ban on %s expired.", cr->name, i->mask.c_str()); const char *setban[3]; - setban[0] = strdup(i->channel.c_str()); + setban[0] = i->channel.c_str(); setban[1] = "-b"; - setban[2] = strdup(i->mask.c_str()); + setban[2] = i->mask.c_str(); // kludge alert! // ::SendMode expects a userrec* to send the numeric replies // back to, so we create it a fake user that isnt in the user @@ -176,18 +176,15 @@ class ModuleTimedBans : public Module // falls into the abyss :p userrec* temp = new userrec(ServerInstance); temp->fd = FD_MAGIC_NUMBER; - ServerInstance->SendMode(setban,3,temp); /* FIX: Send mode remotely*/ std::deque<std::string> n; n.push_back(setban[0]); n.push_back("-b"); n.push_back(setban[2]); + ServerInstance->SendMode(setban,3,temp); Event rmode((char *)&n, NULL, "send_mode"); rmode.Send(ServerInstance); DELETE(temp); - // i hate free. - free((char*)setban[0]); - free((char*)setban[2]); } else { |