diff --git a/src/models/messagecontentmodel.cpp b/src/models/messagecontentmodel.cpp index 8d399cb46..53ee573a3 100644 --- a/src/models/messagecontentmodel.cpp +++ b/src/models/messagecontentmodel.cpp @@ -84,7 +84,7 @@ void MessageContentModel::initializeModel() }); if (m_event == nullptr) { - m_room->getEvent(m_eventId); + intiializeEvent(m_room->getEvent(m_eventId)); if (m_event == nullptr) { m_room->downloadEventFromServer(m_eventId); } @@ -189,6 +189,10 @@ void MessageContentModel::intiializeEvent(const QString &eventId) void MessageContentModel::intiializeEvent(const Quotient::RoomEvent *event) { + if (event == nullptr) { + return; + } + m_event = loadEvent(event->fullJson()); // a pending event may not previously have had an event ID so update. m_eventId = EventHandler::id(m_event.get()); diff --git a/src/models/threadmodel.cpp b/src/models/threadmodel.cpp index e5100c2c3..a5aa2e553 100644 --- a/src/models/threadmodel.cpp +++ b/src/models/threadmodel.cpp @@ -117,6 +117,9 @@ void ThreadModel::addModels() addSourceModel(*it); } addSourceModel(m_threadChatBarModel); + + beginResetModel(); + endResetModel(); } void ThreadModel::clearModels()