summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorlinuxdaemon <linuxdaemon@snoonet.org>2019-04-27 16:41:48 -0500
committerPeter Powell <petpow@saberuk.com>2019-04-28 00:01:25 +0100
commitd4aab8d30a4721623ccb02d7bb801dfe271f8e36 (patch)
tree43bcdd5c414cec06736b8ab5064cee65e895b77a /src
parentaad20cbcb358b1a7cfa2d9e587477ec02dafb6a1 (diff)
m_spanningtree: Ensure tags are sent in forwarded cmds
When a user (U1) sends a PRIVMSG to a server (S1), which sends it to S2, which finally sends it to S3 to send to U2, S2 doesn't send the tags it received on the command from S1 to S3.
Diffstat (limited to 'src')
-rw-r--r--src/modules/m_spanningtree/treesocket2.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/modules/m_spanningtree/treesocket2.cpp b/src/modules/m_spanningtree/treesocket2.cpp
index 45f8a380f..aeb63c99c 100644
--- a/src/modules/m_spanningtree/treesocket2.cpp
+++ b/src/modules/m_spanningtree/treesocket2.cpp
@@ -376,11 +376,11 @@ void TreeSocket::ProcessConnectedLine(std::string& taglist, std::string& prefix,
}
CmdResult res;
+ ClientProtocol::TagMap tags;
if (scmd)
res = scmd->Handle(who, params);
else
{
- ClientProtocol::TagMap tags;
std::string tag;
irc::sepstream tagstream(taglist, ';');
while (tagstream.GetToken(tag))
@@ -391,7 +391,7 @@ void TreeSocket::ProcessConnectedLine(std::string& taglist, std::string& prefix,
}
if (res == CMD_SUCCESS)
- Utils->RouteCommand(server->GetRoute(), cmdbase, params, who);
+ Utils->RouteCommand(server->GetRoute(), cmdbase, CommandBase::Params(params, tags), who);
}
void TreeSocket::OnTimeout()