diff options
author | danieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7> | 2010-02-02 15:02:25 +0000 |
---|---|---|
committer | danieldg <danieldg@e03df62e-2008-0410-955e-edbf42e46eb7> | 2010-02-02 15:02:25 +0000 |
commit | 0ca1aa58d74ee743423602467cedda686e311bc1 (patch) | |
tree | b5c7e1f6e48f19f2f499a6bd602ba6b7c2788259 /src/helperfuncs.cpp | |
parent | f910ad1ad2306e1831616dead705d974e3d1a132 (diff) |
Sort items in the 005 line
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12351 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/helperfuncs.cpp')
-rw-r--r-- | src/helperfuncs.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp index ffa30fb84..bba8dc8dc 100644 --- a/src/helperfuncs.cpp +++ b/src/helperfuncs.cpp @@ -396,13 +396,18 @@ std::string InspIRCd::TimeString(time_t curtime) void InspIRCd::AddExtBanChar(char c) { std::string &tok = Config->data005; - std::string::size_type ebpos; + std::string::size_type ebpos = tok.find(" EXTBAN=,"); - if ((ebpos = tok.find(" EXTBAN=,")) == std::string::npos) + if (ebpos == std::string::npos) { tok.append(" EXTBAN=,"); tok.push_back(c); } else - tok.insert(ebpos + 9, 1, c); + { + ebpos += 9; + while (isalpha(tok[ebpos]) && tok[ebpos] < c) + ebpos++; + tok.insert(ebpos, 1, c); + } } |