mirror of
https://github.com/inspircd/inspircd.git
synced 2025-03-10 02:59:01 -04:00
Fix sending the entire VERSION output as a single parameter.
Closes #1560.
This commit is contained in:
parent
0527f858ce
commit
25b3686f43
@ -29,8 +29,12 @@ CommandVersion::CommandVersion(Module* parent)
|
||||
|
||||
CmdResult CommandVersion::Handle(User* user, const Params& parameters)
|
||||
{
|
||||
std::string version = ServerInstance->GetVersionString((user->IsOper()));
|
||||
user->WriteNumeric(RPL_VERSION, version);
|
||||
Numeric::Numeric numeric(RPL_VERSION);
|
||||
irc::tokenstream tokens(ServerInstance->GetVersionString(user->IsOper()));
|
||||
for (std::string token; tokens.GetTrailing(token); )
|
||||
numeric.push(token);
|
||||
user->WriteNumeric(numeric);
|
||||
|
||||
LocalUser *lu = IS_LOCAL(user);
|
||||
if (lu != NULL)
|
||||
{
|
||||
|
@ -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
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user