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.
This commit is contained in:
Mechiel Lukkien 2025-03-16 13:57:44 +01:00
parent ac4b006ecd
commit 26793e407a
No known key found for this signature in database

View File

@ -263,6 +263,7 @@ func (c *conn) cmdSetmetadata(tag, cmd string, p *parser) {
a.ModSeq = modseq a.ModSeq = modseq
err = tx.Insert(&a) err = tx.Insert(&a)
xcheckf(err, "inserting annotation") xcheckf(err, "inserting annotation")
changes = append(changes, a.Change(mailboxName))
} else { } else {
xcheckf(err, "get metadata") xcheckf(err, "get metadata")
oa.ModSeq = modseq oa.ModSeq = modseq
@ -273,8 +274,8 @@ func (c *conn) cmdSetmetadata(tag, cmd string, p *parser) {
oa.Value = a.Value oa.Value = a.Value
err = tx.Update(&oa) err = tx.Update(&oa)
xcheckf(err, "updating metdata") xcheckf(err, "updating metdata")
changes = append(changes, oa.Change(mailboxName))
} }
changes = append(changes, a.Change(mailboxName))
} }
c.xcheckMetadataSize(tx) c.xcheckMetadataSize(tx)