From e48cfaa41f35038617a8c7acbcacb8f03ffc20d9 Mon Sep 17 00:00:00 2001 From: Joshua Goins Date: Sat, 19 Aug 2023 17:19:19 -0400 Subject: [PATCH] Check if the room is valid before trying to refresh users --- src/models/userlistmodel.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/models/userlistmodel.cpp b/src/models/userlistmodel.cpp index 5cf3c2e0f..d0d73aeb4 100644 --- a/src/models/userlistmodel.cpp +++ b/src/models/userlistmodel.cpp @@ -163,17 +163,19 @@ void UserListModel::refreshAllUsers() } m_users.clear(); - m_users = m_currentRoom->users(); - std::sort(m_users.begin(), m_users.end(), m_currentRoom->memberSorter()); + if (m_currentRoom != nullptr) { + m_users = m_currentRoom->users(); + std::sort(m_users.begin(), m_users.end(), m_currentRoom->memberSorter()); - for (User *user : std::as_const(m_users)) { - connect(user, &User::defaultAvatarChanged, this, [this, user]() { - refreshUser(user, {AvatarRole}); + for (User *user : std::as_const(m_users)) { + connect(user, &User::defaultAvatarChanged, this, [this, user]() { + refreshUser(user, {AvatarRole}); + }); + } + connect(m_currentRoom->connection(), &Connection::loggedOut, this, [this]() { + setRoom(nullptr); }); } - connect(m_currentRoom->connection(), &Connection::loggedOut, this, [this]() { - setRoom(nullptr); - }); endResetModel(); Q_EMIT usersRefreshed(); }