aboutsummaryrefslogtreecommitdiff
path: root/src/modules/m_ircv3_echomessage.cpp
diff options
context:
space:
mode:
authorGravatar Sadie Powell2023-11-15 22:17:18 +0000
committerGravatar Sadie Powell2024-05-06 17:18:07 +0100
commit4b6af49b435d213d94221ac210293f4a2e7ef66f (patch)
tree3d00f8f232ba5b10d17cd89a35ecdea0d7050f9a /src/modules/m_ircv3_echomessage.cpp
parentSwitch --(protocol)debug to use a custom logger. (diff)
Allow mutating the status message type in OnUserPre(Tag)Message.
Diffstat (limited to 'src/modules/m_ircv3_echomessage.cpp')
-rw-r--r--src/modules/m_ircv3_echomessage.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/modules/m_ircv3_echomessage.cpp b/src/modules/m_ircv3_echomessage.cpp
index 7677c3d7d..59cb22c70 100644
--- a/src/modules/m_ircv3_echomessage.cpp
+++ b/src/modules/m_ircv3_echomessage.cpp
@@ -92,7 +92,8 @@ public:
case MessageTarget::TYPE_CHANNEL:
{
Channel* chan = target.Get<Channel>();
- ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, user, chan, text, details.type, target.status);
+ const char status = details.echo_original ? target.original_status : target.status;
+ ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, user, chan, text, details.type, status);
privmsg.AddTags(tags);
AddEchoTag(privmsg);
localuser->Send(ServerInstance->GetRFCEvents().privmsg, privmsg);
@@ -132,7 +133,8 @@ public:
case MessageTarget::TYPE_CHANNEL:
{
Channel* chan = target.Get<Channel>();
- CTCTags::TagMessage message(user, chan, tags, target.status);
+ const char status = details.echo_original ? target.original_status : target.status;
+ CTCTags::TagMessage message(user, chan, tags, status);
AddEchoTag(message);
localuser->Send(tagmsgprov, message);
break;