diff options
author | Peter Powell <petpow@saberuk.com> | 2019-01-19 12:55:31 +0000 |
---|---|---|
committer | Peter Powell <petpow@saberuk.com> | 2019-01-19 13:10:56 +0000 |
commit | 25b3686f43d2a0dcc40157d7119a80b783a07f8f (patch) | |
tree | 0aea94b04703267605aafeaa5d67f20dcb813d12 /src/modules | |
parent | 0527f858cecb05a79b6405b6d353a460a4946f7f (diff) |
Fix sending the entire VERSION output as a single parameter.
Closes #1560.
Diffstat (limited to 'src/modules')
-rw-r--r-- | src/modules/m_spanningtree/main.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/modules/m_spanningtree/main.cpp b/src/modules/m_spanningtree/main.cpp index 985762872..de1e8eb19 100644 --- a/src/modules/m_spanningtree/main.cpp +++ b/src/modules/m_spanningtree/main.cpp @@ -324,8 +324,12 @@ ModResult ModuleSpanningTree::HandleVersion(const CommandBase::Params& parameter // If it's empty it might be that the server is still syncing (full version hasn't arrived yet) // or the server is a 2.0 server and does not send a full version. bool showfull = ((user->IsOper()) && (!found->GetFullVersion().empty())); - const std::string& Version = (showfull ? found->GetFullVersion() : found->GetVersion()); - user->WriteNumeric(RPL_VERSION, Version); + + Numeric::Numeric numeric(RPL_VERSION); + irc::tokenstream tokens(showfull ? found->GetFullVersion() : found->GetVersion()); + for (std::string token; tokens.GetTrailing(token); ) + numeric.push(token); + user->WriteNumeric(numeric); } else { |