Fix crash when there are no account emojis

This commit is contained in:
Tobias Fella
2023-05-06 15:31:20 +02:00
parent b5764c4d04
commit c9ddf2f04a

View File

@@ -63,6 +63,7 @@ void ImagePacksModel::setRoom(NeoChatRoom *room)
// TODO listen to account data changing // TODO listen to account data changing
// TODO listen to packs changing // TODO listen to packs changing
if (m_room->connection()->hasAccountData("im.ponies.user_emotes"_ls)) {
auto json = m_room->connection()->accountData("im.ponies.user_emotes"_ls)->contentJson(); auto json = m_room->connection()->accountData("im.ponies.user_emotes"_ls)->contentJson();
json["pack"] = QJsonObject{ json["pack"] = QJsonObject{
{"display_name", i18n("Own Stickers")}, {"display_name", i18n("Own Stickers")},
@@ -71,6 +72,7 @@ void ImagePacksModel::setRoom(NeoChatRoom *room)
if (!content.images.isEmpty()) { if (!content.images.isEmpty()) {
m_events += ImagePackEventContent(json); m_events += ImagePackEventContent(json);
} }
}
const auto &accountData = m_room->connection()->accountData("im.ponies.emote_rooms"_ls); const auto &accountData = m_room->connection()->accountData("im.ponies.emote_rooms"_ls);
if (accountData) { if (accountData) {
const auto &rooms = accountData->contentJson()["rooms"_ls].toObject(); const auto &rooms = accountData->contentJson()["rooms"_ls].toObject();