diff options
author | Adam <Adam@Anope.org> | 2010-05-25 13:50:17 -0500 |
---|---|---|
committer | Adam <Adam@anope.org> | 2010-06-18 21:04:08 -0400 |
commit | f0a44ba89471e006ab10e398e9635adbc73eb674 (patch) | |
tree | d7607fd1f8678660b0fba625850786e94dd940c1 /src/misc.cpp | |
parent | 4a2b9ebcf38d6c0a2860b966421b3af125438488 (diff) |
Made NumberList take an arg to determin if it should pass numbers in descending order, fixes listing specific ranges being returned in descending order
Diffstat (limited to 'src/misc.cpp')
-rw-r--r-- | src/misc.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
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; |