summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/irc/irc_client.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/irc/irc_client.cpp b/src/irc/irc_client.cpp
index f339580..72eec02 100644
--- a/src/irc/irc_client.cpp
+++ b/src/irc/irc_client.cpp
@@ -219,7 +219,14 @@ void IrcClient::on_channel_message(const IrcMessage& message)
iid.chan = nick;
muc = false;
}
- this->bridge->send_message(iid, nick, body, muc);
+ if (!body.empty() && body[0] == '\01')
+ {
+ if (body.substr(1, 6) == "ACTION")
+ this->bridge->send_message(iid, nick,
+ std::string("/me") + body.substr(7, body.size() - 8), muc);
+ }
+ else
+ this->bridge->send_message(iid, nick, body, muc);
}
void IrcClient::empty_motd(const IrcMessage& message)