Disconnect the user from all its IRC servers whenever he returns an error

fix #2524
This commit is contained in:
Florent Le Coz
2014-05-15 00:32:31 +02:00
parent 712b7bdfdf
commit 12c8b1ae0b
3 changed files with 34 additions and 4 deletions
+1 -2
View File
@@ -41,11 +41,10 @@ static std::tuple<std::string, std::string> get_role_affiliation_from_irc_mode(c
return std::make_tuple("participant", "none");
}
void Bridge::shutdown()
void Bridge::shutdown(const std::string& exit_message)
{
for (auto it = this->irc_clients.begin(); it != this->irc_clients.end(); ++it)
{
const std::string exit_message("Gateway shutdown");
it->second->send_quit_command(exit_message);
it->second->leave_dummy_channel(exit_message);
}
+2 -1
View File
@@ -27,11 +27,12 @@ public:
/**
* QUIT all connected IRC servers.
*/
void shutdown();
void shutdown(const std::string& exit_message);
/**
* Remove all inactive IrcClients
*/
void clean();
static Xmpp::body make_xmpp_body(const std::string& str);
/***
**