diff --git a/backends/twitter/TwitterPlugin.cpp b/backends/twitter/TwitterPlugin.cpp index fa777960330e14f26960ebb1a53060b942ebdbeb..6d5c5e69d06b19578bff59030436bc848acaa3b3 100644 --- a/backends/twitter/TwitterPlugin.cpp +++ b/backends/twitter/TwitterPlugin.cpp @@ -156,10 +156,13 @@ void TwitterPlugin::handleLoginRequest(const std::string &user, const std::strin // User logging out void TwitterPlugin::handleLogoutRequest(const std::string &user, const std::string &legacyName) { - if(onlineUsers.count(user)) { + if (userdb.count(user)) { delete userdb[user].sessions; userdb[user].sessions = NULL; userdb[user].connectionState = DISCONNECTED; + } + + if(onlineUsers.count(user)) { onlineUsers.erase(user); } } @@ -212,7 +215,7 @@ void TwitterPlugin::handleMessageSendRequest(const std::string &user, const std: if(cmd == "#pin") tp->runAsThread(new PINExchangeProcess(np, userdb[user].sessions, user, data)); else if(cmd == "#help") - tp->runAsThread(new HelpMessageRequest(user, boost::bind(&TwitterPlugin::helpMessageResponse, this, _1, _2))); + tp->runAsThread(new HelpMessageRequest(user, CONFIG_STRING(config, "service.jid"), boost::bind(&TwitterPlugin::helpMessageResponse, this, _1, _2))); else if(cmd[0] == '@') { std::string username = cmd.substr(1); tp->runAsThread(new DirectMessageRequest(userdb[user].sessions, user, username, data,