diff options
author | louiz’ <louiz@louiz.org> | 2016-10-07 23:28:40 +0200 |
---|---|---|
committer | louiz’ <louiz@louiz.org> | 2016-10-07 23:28:40 +0200 |
commit | 8ac8d2b2425d19eb995a36efa808b664979e358f (patch) | |
tree | daa167a45c9b104a4ef57a965f6aad73644ffb1c /src/irc | |
parent | 8cf292fa446e26012cf4a8ff186105d8e762f79b (diff) | |
download | biboumi-8ac8d2b2425d19eb995a36efa808b664979e358f.tar.gz biboumi-8ac8d2b2425d19eb995a36efa808b664979e358f.tar.bz2 biboumi-8ac8d2b2425d19eb995a36efa808b664979e358f.tar.xz biboumi-8ac8d2b2425d19eb995a36efa808b664979e358f.zip |
Correctly set status="110" in the presence for the target of a kick
Diffstat (limited to 'src/irc')
-rw-r--r-- | src/irc/irc_client.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/irc/irc_client.cpp b/src/irc/irc_client.cpp index 85fdec5..c301af0 100644 --- a/src/irc/irc_client.cpp +++ b/src/irc/irc_client.cpp @@ -964,14 +964,15 @@ void IrcClient::on_kick(const IrcMessage& message) IrcChannel* channel = this->get_channel(chan_name); if (!channel->joined) return ; - if (channel->get_self()->nick == target) + const bool self = channel->get_self()->nick == target; + if (self) channel->joined = false; IrcUser author(message.prefix); Iid iid; iid.set_local(chan_name); iid.set_server(this->hostname); iid.type = Iid::Type::Channel; - this->bridge.kick_muc_user(std::move(iid), target, reason, author.nick); + this->bridge.kick_muc_user(std::move(iid), target, reason, author.nick, self); } void IrcClient::on_invite(const IrcMessage& message) |