diff --git a/src/usermanager.cpp b/src/usermanager.cpp index 91509686f53b96f868770b9fe35e34c2cf82b078..3146d8cb1ff7c0ac26ecf095de607b19d0ff27a0 100644 --- a/src/usermanager.cpp +++ b/src/usermanager.cpp @@ -92,6 +92,11 @@ void UserManager::removeUser(User *user) { m_users.erase(user->getJID().toBare().toString()); if (m_cachedUser == user) m_cachedUser = NULL; + + if (m_component->inServerMode()) { + disconnectUser(user->getJID()); + } + onUserDestroyed(user); delete user; malloc_trim(0);