dovecot-1.2: virtual mailboxes: Fixed an assert-crash when mailb...
dovecot at dovecot.org
dovecot at dovecot.org
Tue Nov 11 22:01:55 EET 2008
details: http://hg.dovecot.org/dovecot-1.2/rev/2a9d0bfc2c2b
changeset: 8391:2a9d0bfc2c2b
user: Timo Sirainen <tss at iki.fi>
date: Tue Nov 11 22:01:51 2008 +0200
description:
virtual mailboxes: Fixed an assert-crash when mailbox was being opened.
diffstat:
1 file changed, 10 insertions(+), 2 deletions(-)
src/plugins/virtual/virtual-sync.c | 12 ++++++++++--
diffs (22 lines):
diff -r db0c70913765 -r 2a9d0bfc2c2b src/plugins/virtual/virtual-sync.c
--- a/src/plugins/virtual/virtual-sync.c Fri Nov 07 16:29:42 2008 +0200
+++ b/src/plugins/virtual/virtual-sync.c Tue Nov 11 22:01:51 2008 +0200
@@ -974,8 +974,16 @@ static void virtual_sync_backend_map_uid
else {
/* exists - update uidmap and flags */
uidmap[j++].virtual_uid = vuid;
- virtual_sync_external_flags(ctx, bbox, vseq,
- vrec->real_uid);
+ /* if ctx->retry is set, we're just opening the virtual
+ mailbox and using a continued search using modseq.
+ some messages in uidmap may already be expunged, so
+ we can't go looking at the real messages yet.
+ after retrying the sync we'll get back here and
+ really do it. */
+ if (!ctx->retry) {
+ virtual_sync_external_flags(ctx, bbox, vseq,
+ vrec->real_uid);
+ }
}
}
i_free(vmails);
More information about the dovecot-cvs
mailing list