diff options
Diffstat (limited to 'src/commands/cmd_gline.cpp')
-rw-r--r-- | src/commands/cmd_gline.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/commands/cmd_gline.cpp b/src/commands/cmd_gline.cpp index a6bec9c0e..d2a1f69d6 100644 --- a/src/commands/cmd_gline.cpp +++ b/src/commands/cmd_gline.cpp @@ -22,11 +22,11 @@ extern "C" DllExport Command* init_command(InspIRCd* Instance) /** Handle /GLINE */ -CmdResult CommandGline::Handle (const char* const* parameters, int pcnt, User *user) +CmdResult CommandGline::Handle (const std::vector<std::string>& parameters, User *user) { std::string target = parameters[0]; - if (pcnt >= 3) + if (parameters.size() >= 3) { IdentHostPair ih; User* find = ServerInstance->FindNick(target.c_str()); @@ -48,14 +48,14 @@ CmdResult CommandGline::Handle (const char* const* parameters, int pcnt, User *u if (ServerInstance->HostMatchesEveryone(ih.first+"@"+ih.second,user)) return CMD_FAILURE; - else if (strchr(target.c_str(),'!')) + else if (target.find('!') != std::string::npos) { user->WriteServ("NOTICE %s :*** G-Line cannot operate on nick!user@host masks",user->nick); return CMD_FAILURE; } - long duration = ServerInstance->Duration(parameters[1]); - GLine* gl = new GLine(ServerInstance, ServerInstance->Time(), duration, user->nick, parameters[2], ih.first.c_str(), ih.second.c_str()); + long duration = ServerInstance->Duration(parameters[1].c_str()); + GLine* gl = new GLine(ServerInstance, ServerInstance->Time(), duration, user->nick, parameters[2].c_str(), ih.first.c_str(), ih.second.c_str()); if (ServerInstance->XLines->AddLine(gl, user)) { if (!duration) |