From 7b5810a41076f72ff28dc9cce974db7d520d6dbc Mon Sep 17 00:00:00 2001 From: HanzZ Date: Sun, 21 Aug 2011 22:52:05 +0200 Subject: [PATCH] Removed old hack which cause crash in some situations --- src/rosterresponder.cpp | 20 +++----------------- 1 file changed, 3 insertions(+), 17 deletions(-) diff --git a/src/rosterresponder.cpp b/src/rosterresponder.cpp index ff6b91cc..7b739647 100644 --- a/src/rosterresponder.cpp +++ b/src/rosterresponder.cpp @@ -51,23 +51,9 @@ bool RosterResponder::handleGetRequest(const Swift::JID& from, const Swift::JID& // For now we send empty reponse, but TODO: Get buddies from database and send proper stored roster. User *user = m_userManager->getUser(from.toBare().toString()); if (!user) { - LOG4CXX_INFO(logger, from.toBare().toString() << ": Sending roster"); - // Client can send jabber:iq:roster IQ before presence, so we do little hack here to - // trigger logging in. - // UserManager should create user now, if everything is OK. - Swift::Presence::ref response = Swift::Presence::create(); - response->setTo(to); - response->setFrom(from); - response->setType(Swift::Presence::Available); - m_userManager->handlePresence(response); - - // if it's not created, lets finish this get - user = m_userManager->getUser(from.toBare().toString()); - if (!user) { - sendResponse(from, id, boost::shared_ptr(new RosterPayload())); - LOG4CXX_WARN(logger, from.toBare().toString() << ": User is not logged in"); - return true; - } + sendResponse(from, id, boost::shared_ptr(new RosterPayload())); + LOG4CXX_WARN(logger, from.toBare().toString() << ": User is not logged in"); + return true; } sendResponse(from, id, user->getRosterManager()->generateRosterPayload()); user->getRosterManager()->sendCurrentPresences(from);