M src/bridge/bridge.cpp => src/bridge/bridge.cpp +1 -4
@@ 365,10 365,7 @@ void Bridge::leave_irc_channel(Iid&& iid, const std::string& status_message, con
// acknowledgment from the server
IrcChannel* channel = irc->get_channel(iid.get_local());
if (channel->joined && !channel->parting)
- {
- irc->send_part_command(iid.get_local(), status_message);
- channel->parting = true;
- }
+ irc->send_part_command(iid.get_local(), status_message);
// Since there are no resources left in that channel, we don't
// want to receive private messages using this room's JID
this->remove_all_preferred_from_jid_of_room(iid.get_local());
M src/irc/irc_client.cpp => src/irc/irc_client.cpp +1 -0
@@ 502,6 502,7 @@ void IrcClient::send_part_command(const std::string& chan_name, const std::strin
this->leave_dummy_channel(status_message);
else
this->send_message(IrcMessage("PART", {chan_name, status_message}));
+ channel->parting = true;
}
}