From 26793e407abde0036bfa6865bd288467c3395c83 Mon Sep 17 00:00:00 2001 From: Mechiel Lukkien Date: Sun, 16 Mar 2025 13:57:44 +0100 Subject: [PATCH] imapserver: Fix broadcasting change when modifying metadata key We were not broadcasting the correct change, at least the modseq was missing in case of an update. --- imapserver/metadata.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/imapserver/metadata.go b/imapserver/metadata.go index 8f7ffa7..e2527c3 100644 --- a/imapserver/metadata.go +++ b/imapserver/metadata.go @@ -263,6 +263,7 @@ func (c *conn) cmdSetmetadata(tag, cmd string, p *parser) { a.ModSeq = modseq err = tx.Insert(&a) xcheckf(err, "inserting annotation") + changes = append(changes, a.Change(mailboxName)) } else { xcheckf(err, "get metadata") oa.ModSeq = modseq @@ -273,8 +274,8 @@ func (c *conn) cmdSetmetadata(tag, cmd string, p *parser) { oa.Value = a.Value err = tx.Update(&oa) xcheckf(err, "updating metdata") + changes = append(changes, oa.Change(mailboxName)) } - changes = append(changes, a.Change(mailboxName)) } c.xcheckMetadataSize(tx)