isync

mailbox synchronization program
git clone https://git.code.sf.net/p/isync/isync
Log | Files | Refs | README | LICENSE

commit ca72383fe947d70950ddfe110d033a158ac9a183
parent 5d6741a9a8ba71ae94ae15f9bd79f34d8d785ea4
Author: Oswald Buddenhagen <ossi@users.sf.net>
Date:   Thu, 16 Jul 2020 13:08:29 +0200

don't forget to skip dead messages on far side during expiration

this is mostly theoretical, as at this point no updates to the message
list can have actually happened. but it's future-proof and consistent
with the near-side loop.

Diffstat:
Msrc/sync.c | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/sync.c b/src/sync.c @@ -1671,6 +1671,8 @@ box_loaded( int sts, message_t *msgs, int total_msgs, int recent_msgs, void *aux } } for (tmsg = svars->msgs[F]; tmsg; tmsg = tmsg->next) { + if (tmsg->status & M_DEAD) + continue; if ((srec = tmsg->srec) && (srec->status & S_PENDING) && !(tmsg->flags & F_DELETED)) alive++; } @@ -1705,6 +1707,8 @@ box_loaded( int sts, message_t *msgs, int total_msgs, int recent_msgs, void *aux } } for (tmsg = svars->msgs[F]; tmsg; tmsg = tmsg->next) { + if (tmsg->status & M_DEAD) + continue; if ((srec = tmsg->srec) && (srec->status & S_PENDING)) { nflags = tmsg->flags; if (!(nflags & F_DELETED)) {