summaryrefslogtreecommitdiff
path: root/src/commands/cmd_list.cpp
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-04 21:37:36 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2008-05-04 21:37:36 +0000
commitffbd1eebf0b82bf40482879f410f58874030a695 (patch)
treeef64846a1dcc27e8768723e30b5c4891f64e2942 /src/commands/cmd_list.cpp
parent1c0efd2f569ebcb725d361d3b9a8e31532f7a071 (diff)
Conversion of command handler params from "const char* const* parameters, int pcnt" to "const std::vector<std::string>& parameters". All of core is converted, but cant test it till the modules are converted.
IMPORTANT: The mode parser public calls have had to be tweaked a bit to also use the string vector. Note that this makes a LOT of our core a bit messy and paves the way to convert a lot of stuff from the mess of .c_str() calls to using std::string params directly. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9608 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/commands/cmd_list.cpp')
-rw-r--r--src/commands/cmd_list.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/commands/cmd_list.cpp b/src/commands/cmd_list.cpp
index 2c7971edd..518aee62f 100644
--- a/src/commands/cmd_list.cpp
+++ b/src/commands/cmd_list.cpp
@@ -22,24 +22,22 @@ extern "C" DllExport Command* init_command(InspIRCd* Instance)
return new CommandList(Instance);
}
-CmdResult CommandList::Handle (const char* const* parameters, int pcnt, User *user)
+CmdResult CommandList::Handle (const std::vector<std::string>& parameters, User *user)
{
int minusers = 0, maxusers = 0;
user->WriteNumeric(321, "%s Channel :Users Name",user->nick);
/* Work around mIRC suckyness. YOU SUCK, KHALED! */
- if (pcnt == 1)
+ if (parameters.size() == 1)
{
- if (*parameters[0] == '<')
+ if (parameters[0][0] == '<')
{
- maxusers = atoi(parameters[0]+1);
- pcnt = 0;
+ maxusers = atoi((parameters[0].c_str())+1);
}
- else if (*parameters[0] == '>')
+ else if (parameters[0][0] == '>')
{
- minusers = atoi(parameters[0]+1);
- pcnt = 0;
+ minusers = atoi((parameters[0].c_str())+1);
}
}
@@ -54,9 +52,9 @@ CmdResult CommandList::Handle (const char* const* parameters, int pcnt, User *us
if (too_many || too_few)
continue;
- if (pcnt)
+ if (parameters.size() && parameters[0][0] != '<' && parameters[0][0] == '>')
{
- if (!match(i->second->name, parameters[0]) && !match(i->second->topic, parameters[0]))
+ if (!match(i->second->name, parameters[0].c_str()) && !match(i->second->topic, parameters[0].c_str()))
continue;
}