diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/bs_badwords.cpp | 4 | ||||
-rw-r--r-- | src/core/cs_access.cpp | 4 | ||||
-rw-r--r-- | src/core/cs_akick.cpp | 4 | ||||
-rw-r--r-- | src/core/cs_xop.cpp | 4 | ||||
-rw-r--r-- | src/core/ms_del.cpp | 2 | ||||
-rw-r--r-- | src/core/ms_list.cpp | 2 | ||||
-rw-r--r-- | src/core/ms_read.cpp | 2 | ||||
-rw-r--r-- | src/core/os_akill.cpp | 4 | ||||
-rw-r--r-- | src/core/os_session.cpp | 4 | ||||
-rw-r--r-- | src/core/os_snline.cpp | 8 | ||||
-rw-r--r-- | src/core/os_sqline.cpp | 8 | ||||
-rw-r--r-- | src/core/os_szline.cpp | 8 | ||||
-rw-r--r-- | src/misc.cpp | 16 |
13 files changed, 40 insertions, 30 deletions
diff --git a/src/core/bs_badwords.cpp b/src/core/bs_badwords.cpp index ce026e9c4..d329aa8e0 100644 --- a/src/core/bs_badwords.cpp +++ b/src/core/bs_badwords.cpp @@ -20,7 +20,7 @@ class BadwordsListCallback : public NumberList ChannelInfo *ci; bool SentHeader; public: - BadwordsListCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list), u(_u), ci(_ci), SentHeader(false) + BadwordsListCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list, false), u(_u), ci(_ci), SentHeader(false) { } @@ -56,7 +56,7 @@ class BadwordsDelCallback : public NumberList ChannelInfo *ci; unsigned Deleted; public: - BadwordsDelCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list), u(_u), ci(_ci), Deleted(0) + BadwordsDelCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list, true), u(_u), ci(_ci), Deleted(0) { } diff --git a/src/core/cs_access.cpp b/src/core/cs_access.cpp index 6ef238b71..641ee8f93 100644 --- a/src/core/cs_access.cpp +++ b/src/core/cs_access.cpp @@ -21,7 +21,7 @@ class AccessListCallback : public NumberList ChannelInfo *ci; bool SentHeader; public: - AccessListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist), u(_u), ci(_ci), SentHeader(false) + AccessListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist, false), u(_u), ci(_ci), SentHeader(false) { } @@ -114,7 +114,7 @@ class AccessDelCallback : public NumberList std::string Nicks; bool Denied; public: - AccessDelCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist), u(_u), ci(_ci), Deleted(0), Denied(false) + AccessDelCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist, true), u(_u), ci(_ci), Deleted(0), Denied(false) { } diff --git a/src/core/cs_akick.cpp b/src/core/cs_akick.cpp index 3d56e4846..0333a5042 100644 --- a/src/core/cs_akick.cpp +++ b/src/core/cs_akick.cpp @@ -52,7 +52,7 @@ class AkickListCallback : public NumberList ChannelInfo *ci; bool SentHeader; public: - AkickListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist), u(_u), ci(_ci), SentHeader(false) + AkickListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist) : NumberList(numlist, false), u(_u), ci(_ci), SentHeader(false) { } @@ -141,7 +141,7 @@ class AkickDelCallback : public NumberList ChannelInfo *ci; unsigned Deleted; public: - AkickDelCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list), u(_u), ci(_ci), Deleted(0) + AkickDelCallback(User *_u, ChannelInfo *_ci, const std::string &list) : NumberList(list, true), u(_u), ci(_ci), Deleted(0) { } diff --git a/src/core/cs_xop.cpp b/src/core/cs_xop.cpp index c25bf02e2..a4556fdd9 100644 --- a/src/core/cs_xop.cpp +++ b/src/core/cs_xop.cpp @@ -118,7 +118,7 @@ class XOPListCallback : public NumberList int *messages; bool SentHeader; public: - XOPListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist, int _level, int *_messages) : NumberList(numlist), u(_u), ci(_ci), level(_level), messages(_messages), SentHeader(false) + XOPListCallback(User *_u, ChannelInfo *_ci, const std::string &numlist, int _level, int *_messages) : NumberList(numlist, false), u(_u), ci(_ci), level(_level), messages(_messages), SentHeader(false) { } @@ -155,7 +155,7 @@ class XOPDelCallback : public NumberList unsigned Deleted; std::string Nicks; public: - XOPDelCallback(User *_u, ChannelInfo *_ci, int *_messages, const std::string &numlist) : NumberList(numlist), u(_u), ci(_ci), messages(_messages), Deleted(0) + XOPDelCallback(User *_u, ChannelInfo *_ci, int *_messages, const std::string &numlist) : NumberList(numlist, true), u(_u), ci(_ci), messages(_messages), Deleted(0) { } diff --git a/src/core/ms_del.cpp b/src/core/ms_del.cpp index 68c093f86..700df16b4 100644 --- a/src/core/ms_del.cpp +++ b/src/core/ms_del.cpp @@ -20,7 +20,7 @@ class MemoDelCallback : public NumberList ChannelInfo *ci; MemoInfo *mi; public: - MemoDelCallback(User *_u, ChannelInfo *_ci, MemoInfo *_mi, const std::string &list) : NumberList(list), u(_u), ci(_ci), mi(_mi) + MemoDelCallback(User *_u, ChannelInfo *_ci, MemoInfo *_mi, const std::string &list) : NumberList(list, true), u(_u), ci(_ci), mi(_mi) { } diff --git a/src/core/ms_list.cpp b/src/core/ms_list.cpp index c653f7708..066d69775 100644 --- a/src/core/ms_list.cpp +++ b/src/core/ms_list.cpp @@ -21,7 +21,7 @@ class MemoListCallback : public NumberList MemoInfo *mi; bool SentHeader; public: - MemoListCallback(User *_u, ChannelInfo *_ci, MemoInfo *_mi, const std::string &list) : NumberList(list), u(_u), ci(_ci), mi(_mi), SentHeader(false) + MemoListCallback(User *_u, ChannelInfo *_ci, MemoInfo *_mi, const std::string &list) : NumberList(list, false), u(_u), ci(_ci), mi(_mi), SentHeader(false) { } diff --git a/src/core/ms_read.cpp b/src/core/ms_read.cpp index 600e92cae..8368bf57f 100644 --- a/src/core/ms_read.cpp +++ b/src/core/ms_read.cpp @@ -19,7 +19,7 @@ class MemoListCallback : public NumberList User *u; MemoInfo *mi; public: - MemoListCallback(User *_u, MemoInfo *_mi, const std::string &numlist) : NumberList(numlist), u(_u), mi(_mi) + MemoListCallback(User *_u, MemoInfo *_mi, const std::string &numlist) : NumberList(numlist, false), u(_u), mi(_mi) { } diff --git a/src/core/os_akill.cpp b/src/core/os_akill.cpp index 47a2b9dd1..6d4e9ab46 100644 --- a/src/core/os_akill.cpp +++ b/src/core/os_akill.cpp @@ -19,7 +19,7 @@ class AkillDelCallback : public NumberList User *u; unsigned Deleted; public: - AkillDelCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), Deleted(0) + AkillDelCallback(User *_u, const std::string &numlist) : NumberList(numlist, true), u(_u), Deleted(0) { } @@ -56,7 +56,7 @@ class AkillListCallback : public NumberList User *u; bool SentHeader; public: - AkillListCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), SentHeader(false) + AkillListCallback(User *_u, const std::string &numlist) : NumberList(numlist, false), u(_u), SentHeader(false) { } diff --git a/src/core/os_session.cpp b/src/core/os_session.cpp index 06331eb79..8c019c537 100644 --- a/src/core/os_session.cpp +++ b/src/core/os_session.cpp @@ -20,7 +20,7 @@ class ExceptionDelCallback : public NumberList User *u; unsigned Deleted; public: - ExceptionDelCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), Deleted(0) + ExceptionDelCallback(User *_u, const std::string &numlist) : NumberList(numlist, true), u(_u), Deleted(0) { } @@ -62,7 +62,7 @@ class ExceptionListCallback : public NumberList User *u; bool SentHeader; public: - ExceptionListCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), SentHeader(false) + ExceptionListCallback(User *_u, const std::string &numlist) : NumberList(numlist, false), u(_u), SentHeader(false) { } diff --git a/src/core/os_snline.cpp b/src/core/os_snline.cpp index 503b63b5c..f792fd1ee 100644 --- a/src/core/os_snline.cpp +++ b/src/core/os_snline.cpp @@ -21,7 +21,7 @@ class SNLineDelCallback : public NumberList User *u; unsigned Deleted; public: - SNLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), Deleted(0) + SNLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist, true), u(_u), Deleted(0) { } @@ -58,7 +58,7 @@ class SNLineListCallback : public NumberList User *u; bool SentHeader; public: - SNLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), SentHeader(false) + SNLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist, false), u(_u), SentHeader(false) { } @@ -81,7 +81,7 @@ class SNLineListCallback : public NumberList notice_lang(Config.s_OperServ, u, OPER_SNLINE_LIST_HEADER); } - DoList(u, x, Number); + DoList(u, x, Number - 1); } static void DoList(User *u, XLine *x, unsigned Number) @@ -110,7 +110,7 @@ class SNLineViewCallback : public SNLineListCallback notice_lang(Config.s_OperServ, u, OPER_SNLINE_VIEW_HEADER); } - DoList(u, x, Number); + DoList(u, x, Number - 1); } static void DoList(User *u, XLine *x, unsigned Number) diff --git a/src/core/os_sqline.cpp b/src/core/os_sqline.cpp index 89864c69e..2d32bf507 100644 --- a/src/core/os_sqline.cpp +++ b/src/core/os_sqline.cpp @@ -19,7 +19,7 @@ class SQLineDelCallback : public NumberList User *u; unsigned Deleted; public: - SQLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), Deleted(0) + SQLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist, true), u(_u), Deleted(0) { } @@ -41,7 +41,7 @@ class SQLineDelCallback : public NumberList return; ++Deleted; - DoDel(u, x); + DoDel(u, x - 1); } static void DoDel(User *u, XLine *x) @@ -56,7 +56,7 @@ class SQLineListCallback : public NumberList User *u; bool SentHeader; public: - SQLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), SentHeader(false) + SQLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist, false), u(_u), SentHeader(false) { } @@ -79,7 +79,7 @@ class SQLineListCallback : public NumberList notice_lang(Config.s_OperServ, u, OPER_SQLINE_LIST_HEADER); } - DoList(u, x, Number); + DoList(u, x, Number - 1); } static void DoList(User *u, XLine *x, unsigned Number) diff --git a/src/core/os_szline.cpp b/src/core/os_szline.cpp index 674b8d7d5..a99f099c9 100644 --- a/src/core/os_szline.cpp +++ b/src/core/os_szline.cpp @@ -19,7 +19,7 @@ class SZLineDelCallback : public NumberList User *u; unsigned Deleted; public: - SZLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), Deleted(0) + SZLineDelCallback(User *_u, const std::string &numlist) : NumberList(numlist, true), u(_u), Deleted(0) { } @@ -56,7 +56,7 @@ class SZLineListCallback : public NumberList User *u; bool SentHeader; public: - SZLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist), u(_u), SentHeader(false) + SZLineListCallback(User *_u, const std::string &numlist) : NumberList(numlist, false), u(_u), SentHeader(false) { } @@ -79,7 +79,7 @@ class SZLineListCallback : public NumberList notice_lang(Config.s_OperServ, u, OPER_SZLINE_LIST_HEADER); } - DoList(u, x, Number); + DoList(u, x, Number - 1); } static void DoList(User *u, XLine *x, unsigned Number) @@ -108,7 +108,7 @@ class SZLineViewCallback : public SZLineListCallback notice_lang(Config.s_OperServ, u, OPER_SZLINE_VIEW_HEADER); } - DoList(u, x, Number); + DoList(u, x, Number - 1); } static void DoList(User *u, XLine *x, unsigned Number) diff --git a/src/misc.cpp b/src/misc.cpp index 22ea81432..735fb619a 100644 --- a/src/misc.cpp +++ b/src/misc.cpp @@ -224,7 +224,7 @@ const char *merge_args(int argc, char **argv) /*************************************************************************/ -NumberList::NumberList(const std::string &list) +NumberList::NumberList(const std::string &list, bool descending) : desc(descending) { char *error; commasepstream sep(list); @@ -284,9 +284,19 @@ NumberList::~NumberList() void NumberList::Process() { - for (std::set<unsigned>::reverse_iterator it = numbers.rbegin(); it != numbers.rend(); ++it) + if (this->desc) { - this->HandleNumber(*it); + for (std::set<unsigned>::reverse_iterator it = numbers.rbegin(); it != numbers.rend(); ++it) + { + this->HandleNumber(*it); + } + } + else + { + for (std::set<unsigned>::iterator it = numbers.begin(); it != numbers.end(); ++it) + { + this->HandleNumber(*it); + } } delete this; |