From d3566b1203cbcff3df39d5d60d7b91f44d46b562 Mon Sep 17 00:00:00 2001 From: John Hernandez <129467592+H3rnand3zzz@users.noreply.github.com> Date: Sat, 11 Nov 2023 17:12:48 +0100 Subject: [PATCH] Do not check for unique `stanza-id` for MAM messages Since we might have MAM messages already received earlier it doesn't make sense to require unique stanza-ids there. Fix https://github.com/profanity-im/profanity/issues/1925. --- src/database.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/database.c b/src/database.c index 3a0621c9..ce1d1d3d 100644 --- a/src/database.c +++ b/src/database.c @@ -528,7 +528,8 @@ _add_to_db(ProfMessage* message, char* type, const Jid* const from_jid, const Ji // stanza-id (XEP-0359) doesn't have to be present in the message. // But if it's duplicated, it's a serious server-side problem, so we better track it. - if (message->stanzaid) { + // Unless it's MAM, in that case it's expected behaviour. + if (message->stanzaid && !message->is_mam) { auto_sqlite char* duplicate_check_query = sqlite3_mprintf("SELECT 1 FROM `ChatLogs` WHERE (`archive_id` = %Q)", message->stanzaid);