From 4dc23fee7b7c1d2f8f58de5468e3a39059b57d9a Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Mon, 26 Dec 2005 15:02:38 +0000 Subject: [PATCH] why would somebody manipulate an expired message? right, he wouldn't: he would either expunge the mailbox or configure his MUA to hide trashed messages. consequently don't sync expired message flags, let alone interpret them in a special way. one special feature remains, though: if a non-expunged expired message is flagged on the master, it will be unexpired on the slave. i'm not sure whether i should remove or document this feature. --- src/sync.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/sync.c b/src/sync.c index 6287b41..2b80787 100644 --- a/src/sync.c +++ b/src/sync.c @@ -332,16 +332,15 @@ sync_old( int tops, store_t *sctx, store_t *tctx, store_conf_t *tconf, FILE *jfp unex = 0; if (srec->status & S_EXPIRED) { if (!pull) { - if (sflags & F_DELETED) { - if (!(sflags & F_FLAGGED)) - aflags &= ~F_DELETED; - } else - unex = 1; + if (aflags || dflags) + info( "Info: Flags of expired message changed in (%d,%d)\n", srec->muid, srec->suid ); + return SYNC_OK; } else { if ((sflags & F_FLAGGED) && !(sflags & F_DELETED)) { unex = 1; dflags |= F_DELETED; - } + } else + return SYNC_OK; } } rflags = (*nflags | aflags) & ~dflags;