diff --git a/tools/chatgui/db/db_manager.cpp b/tools/chatgui/db/db_manager.cpp index 6e764378..0bcde3a2 100644 --- a/tools/chatgui/db/db_manager.cpp +++ b/tools/chatgui/db/db_manager.cpp @@ -212,6 +212,8 @@ QList DbManager::getMessagesSince(const QString& chId, qint64 sinceI m.id = sqlite3_column_int64(stmt, 0); m.authorNodeId = (quint64)sqlite3_column_int64(stmt, 1); QByteArray jdata = colBlob(stmt, 2); + m.contentType = QString::fromUtf8(parseJsonField(jdata, "ct")); + if (m.contentType.isEmpty()) m.contentType = "text/plain"; m.data = parseJsonField(jdata, "d"); m.timestamp = sqlite3_column_int64(stmt, 3); m.datahash = 0; diff --git a/tools/chatgui/src/messagelist.cpp b/tools/chatgui/src/messagelist.cpp index 35f6d4df..8444b86e 100644 --- a/tools/chatgui/src/messagelist.cpp +++ b/tools/chatgui/src/messagelist.cpp @@ -94,7 +94,7 @@ static void setVoiceMessageRoles(QStandardItem* item, const QByteArray& data, item->setData(ct, MsgContentTypeRole); if (ct == "audio/opus") { - QString raw = parseJsonField(data, "d"); + QString raw = QString::fromUtf8(data); int pipe = raw.indexOf('|'); QString fname = pipe >= 0 ? raw.left(pipe) : raw; QString dur = pipe >= 0 ? raw.mid(pipe + 1) : QString();