Mercurial > dovecot > original-hg > dovecot-1.2
diff src/lib-storage/index/maildir/maildir-sync.c @ 9017:0aa17f3e4a6d HEAD
Maildir: Handle uidlist errors better.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 04 May 2009 16:42:43 -0400 |
parents | cceea391d04d |
children | 0bb192fe0abd |
line wrap: on
line diff
--- a/src/lib-storage/index/maildir/maildir-sync.c Mon May 04 14:28:31 2009 -0400 +++ b/src/lib-storage/index/maildir/maildir-sync.c Mon May 04 16:42:43 2009 -0400 @@ -690,6 +690,7 @@ enum maildir_uidlist_sync_flags sync_flags; enum maildir_uidlist_rec_flag flags; bool new_changed, cur_changed, lock_failure; + const char *fname; int ret; *lost_files_r = FALSE; @@ -852,8 +853,11 @@ } if (find_uid != NULL && *find_uid != 0) { - if (maildir_uidlist_lookup_nosync(ctx->mbox->uidlist, *find_uid, - &flags) == NULL) { + ret = maildir_uidlist_lookup_nosync(ctx->mbox->uidlist, + *find_uid, &flags, &fname); + if (ret < 0) + return -1; + if (ret == 0) { /* UID is expunged */ *find_uid = 0; } else if ((flags & MAILDIR_UIDLIST_REC_FLAG_NONSYNCED) == 0) {