From db68281a28c5137591bd6f3b0a96ac475ba23cf6 Mon Sep 17 00:00:00 2001 From: Nicolas Werner Date: Tue, 8 Oct 2024 16:55:07 +0200 Subject: [PATCH] Limit status messages to 255 bytes --- src/timeline/PresenceEmitter.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/timeline/PresenceEmitter.cpp b/src/timeline/PresenceEmitter.cpp index da03f9bf..6fd36e8b 100644 --- a/src/timeline/PresenceEmitter.cpp +++ b/src/timeline/PresenceEmitter.cpp @@ -37,8 +37,14 @@ static CacheEntry * pullPresence(const QString &id) { auto p = cache::presence(id.toStdString()); - auto c = new CacheEntry{ - utils::replaceEmoji(QString::fromStdString(p.status_msg).toHtmlEscaped()), p.presence}; + + auto statusMsg = QString::fromStdString(p.status_msg); + if (statusMsg.size() > 255) { + statusMsg.truncate(255); + statusMsg.append(u'…'); + } + + auto c = new CacheEntry{utils::replaceEmoji(std::move(statusMsg).toHtmlEscaped()), p.presence}; presences.insert(id, c); return c; }