diff --git a/src/buddy.cpp b/src/buddy.cpp index 4c1120526c570941ca805b3472023cd6b0bb455d..fcb6b138d8ed7a2170f6d48874f4085110015806 100644 --- a/src/buddy.cpp +++ b/src/buddy.cpp @@ -104,18 +104,15 @@ Swift::Presence::ref Buddy::generatePresenceStanza(int features, bool only_new) Swift::Presence::ref presence = Swift::Presence::create(); presence->setTo(m_rosterManager->getUser()->getJID().toBare()); + presence->setFrom(m_jid); presence->setType(Swift::Presence::Available); if (!statusMessage.empty()) presence->setStatus(statusMessage); - if (s.getType() == Swift::StatusShow::None) { + if (s.getType() == Swift::StatusShow::None) presence->setType(Swift::Presence::Unavailable); - presence->setFrom(Swift::JID(m_jid.getNode(), m_jid.getDomain())); - } - else { - presence->setFrom(m_jid); - } + presence->setShow(s.getType()); if (presence->getType() != Swift::Presence::Unavailable) {