Browse Source

fix dropping of pending message propagations when resuming

started message propagations will now complete upon resumption even if
the run was requested to be a no-op - whether that's a good thing can
be argued, but it's the least effort way to avoid that committing
discards transaction state.
wip/maildir-path-under-inbox
Oswald Buddenhagen 3 years ago
parent
commit
03d0ab0fbf
  1. 8
      src/sync.c

8
src/sync.c

@ -737,11 +737,13 @@ box_opened2( sync_vars_t *svars, int t )
if (srec->status & S_PURGE) { if (srec->status & S_PURGE) {
t = srec->uid[F] ? F : N; t = srec->uid[F] ? F : N;
opts[t] |= OPEN_SETFLAGS; opts[t] |= OPEN_SETFLAGS;
} } else if (srec->status & S_PENDING) {
if (srec->status & S_UPGRADE) {
t = !srec->uid[F] ? F : N; t = !srec->uid[F] ? F : N;
opts[t] |= OPEN_APPEND; opts[t] |= OPEN_APPEND;
opts[t^1] |= OPEN_OLD; if (srec->status & S_UPGRADE)
opts[t^1] |= OPEN_OLD;
else
opts[t^1] |= OPEN_NEW;
if (chan->ops[t] & OP_EXPUNGE) // Don't propagate doomed msgs if (chan->ops[t] & OP_EXPUNGE) // Don't propagate doomed msgs
opts[t^1] |= OPEN_FLAGS; opts[t^1] |= OPEN_FLAGS;
} }

Loading…
Cancel
Save