changeset 4421:f1888ce91702 HEAD

If requested mail isn't found from uidlist, mark the mail as expunged.
author Timo Sirainen <tss@iki.fi>
date Sun, 18 Jun 2006 01:44:57 +0300
parents 1174e508593d
children c46c02c7e602
files src/lib-storage/index/maildir/maildir-mail.c
diffstat 1 files changed, 10 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/index/maildir/maildir-mail.c	Sun Jun 18 00:03:31 2006 +0300
+++ b/src/lib-storage/index/maildir/maildir-mail.c	Sun Jun 18 01:44:57 2006 +0300
@@ -137,8 +137,10 @@
 	if (_mail->uid != 0) {
 		fname = maildir_uidlist_lookup(mbox->uidlist, _mail->uid,
 					       &flags);
-		if (fname == NULL)
+		if (fname == NULL) {
+			_mail->expunged = TRUE;
 			return (uoff_t)-1;
+		}
 	} else {
 		fname = maildir_save_file_get_path(_mail->transaction,
 						   _mail->seq);
@@ -167,6 +169,10 @@
 		if (_mail->uid != 0) {
 			fname = maildir_uidlist_lookup(mbox->uidlist,
 						       _mail->uid, &flags);
+			if (fname == NULL) {
+				_mail->expunged = TRUE;
+				return NULL;
+			}
 		} else {
 			fname = maildir_save_file_get_path(_mail->transaction,
 							   _mail->seq);
@@ -195,8 +201,10 @@
 	if (_mail->uid != 0) {
 		fname = maildir_uidlist_lookup(mbox->uidlist, _mail->uid,
 					       &flags);
-		if (fname == NULL)
+		if (fname == NULL) {
+			_mail->expunged = TRUE;
 			return (uoff_t)-1;
+		}
 	} else {
 		fname = maildir_save_file_get_path(_mail->transaction,
 						   _mail->seq);