From: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com> Date: Sat, 11 Jan 2020 15:41:20 +0000 (+0100) Subject: Fix crash on startup when no users configured X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~222^2^2~413^2~67 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=9af7d4ad06f44d17cee72559b973ee9336e98487;p=nextcloud-desktop.git Fix crash on startup when no users configured Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com> --- diff --git a/src/gui/tray/UserModel.cpp b/src/gui/tray/UserModel.cpp index 1a72a3eab..8a14fc1b2 100644 --- a/src/gui/tray/UserModel.cpp +++ b/src/gui/tray/UserModel.cpp @@ -167,7 +167,17 @@ Q_INVOKABLE bool UserModel::isCurrentUserConnected() Q_INVOKABLE QImage UserModel::currentUserAvatar() { - return _users[_currentUserId].avatar(); + if (_users.count() >= 1) { + return _users[_currentUserId].avatar(); + } else { + QImage image(128, 128, QImage::Format_ARGB32); + image.fill(Qt::GlobalColor::transparent); + QPainter painter(&image); + QSvgRenderer renderer(QString(":/client/theme/white/user.svg")); + renderer.render(&painter); + + return image; + } } QImage UserModel::avatarById(const int &id) @@ -177,17 +187,29 @@ QImage UserModel::avatarById(const int &id) Q_INVOKABLE QString UserModel::currentUserName() { - return _users[_currentUserId].name(); + if (_users.count() >= 1) { + return _users[_currentUserId].name(); + } else { + return QString("No users"); + } } Q_INVOKABLE QString UserModel::currentUserServer() { - return _users[_currentUserId].server(); + if (_users.count() >= 1) { + return _users[_currentUserId].server(); + } else { + return QString(""); + } } Q_INVOKABLE bool UserModel::currentServerHasTalk() { - return _users[_currentUserId].serverHasTalk(); + if (_users.count() >= 1) { + return _users[_currentUserId].serverHasTalk(); + } else { + return false; + } } void UserModel::addUser(AccountStatePtr &user, const bool &isCurrent)