X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=include%2Fu_listmode.h;h=5c5ddd9ffe42df670e1ba4f599979fb8dcfbaf46;hb=9f33bf7fc83cffccae96eb622bf39e8f4838b809;hp=67e8934e5772d3d1eabaa8193f5bebbae321f5cb;hpb=c2d1f2cdafb0a38446844f6bd3d683e8636e37b4;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/include/u_listmode.h b/include/u_listmode.h index 67e8934e5..5c5ddd9ff 100644 --- a/include/u_listmode.h +++ b/include/u_listmode.h @@ -87,10 +87,10 @@ class ListModeBase : public ModeHandler std::string infokey; /** Numeric to use when outputting the list */ - std::string listnumeric; + unsigned int listnumeric; /** Numeric to indicate end of list */ - std::string endoflistnumeric; + unsigned int endoflistnumeric; /** String to send for end of list */ std::string endofliststring; @@ -115,7 +115,7 @@ class ListModeBase : public ModeHandler * @param autotidy Automatically tidy list entries on add * @param ctag Configuration tag to get limits from */ - ListModeBase(InspIRCd* Instance, char modechar, const std::string &eolstr, const std::string &lnum, const std::string &eolnum, bool autotidy, const std::string &ctag = "banlist") + ListModeBase(InspIRCd* Instance, char modechar, const std::string &eolstr, unsigned int lnum, unsigned int eolnum, bool autotidy, const std::string &ctag = "banlist") : ModeHandler(Instance, modechar, 1, 1, true, MODETYPE_CHANNEL, false), listnumeric(lnum), endoflistnumeric(eolnum), endofliststring(eolstr), tidy(autotidy), configtag(ctag) { this->DoRehash(); @@ -153,15 +153,15 @@ class ListModeBase : public ModeHandler { for (modelist::reverse_iterator it = el->rbegin(); it != el->rend(); ++it) { - user->WriteServ("%s %s %s %s %s %s", listnumeric.c_str(), user->nick, channel->name, it->mask.c_str(), it->nick.c_str(), it->time.c_str()); + user->WriteNumeric(listnumeric, "%s %s %s %s %s", user->nick, channel->name, it->mask.c_str(), it->nick.c_str(), it->time.c_str()); } } - user->WriteServ("%s %s %s :%s", endoflistnumeric.c_str(), user->nick, channel->name, endofliststring.c_str()); + user->WriteNumeric(endoflistnumeric, "%s %s :%s", user->nick, channel->name, endofliststring.c_str()); } virtual void DisplayEmptyList(User* user, Channel* channel) { - user->WriteServ("%s %s %s :%s", endoflistnumeric.c_str(), user->nick, channel->name, endofliststring.c_str()); + user->WriteNumeric(endoflistnumeric, "%s %s :%s", user->nick, channel->name, endofliststring.c_str()); } /** Remove all instances of the mode from a channel. @@ -177,7 +177,7 @@ class ListModeBase : public ModeHandler irc::modestacker modestack(false); std::deque stackresult; std::vector mode_junk; - mode_junk[0] = channel->name; + mode_junk.push_back(channel->name); for (modelist::iterator it = el->begin(); it != el->end(); it++) { @@ -194,7 +194,7 @@ class ListModeBase : public ModeHandler { for (size_t j = 0; j < stackresult.size(); j++) { - mode_junk[j+1] = stackresult[j]; + mode_junk.push_back(stackresult[j]); } ServerInstance->SendMode(mode_junk, ServerInstance->FakeClient);