diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/messages.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/messages.cpp b/src/messages.cpp index a6afe2705..774816e44 100644 --- a/src/messages.cpp +++ b/src/messages.cpp @@ -29,8 +29,16 @@ bool CoreIRCDMessageAway::Run(MessageSource &source, const std::vector<Anope::st bool CoreIRCDMessageCapab::Run(MessageSource &source, const std::vector<Anope::string> ¶ms) { - for (unsigned i = 0; i < params.size(); ++i) - Capab.insert(params[i]); + if (params.size() == 1) + { + spacesepstream sep(params[0]); + Anope::string token; + while (sep.GetToken(token)) + Capab.insert(token); + } + else + for (unsigned i = 0; i < params.size(); ++i) + Capab.insert(params[i]); return true; } |