changeset 9849:faa19e000b57 HEAD

virtual: Don't crash if trying to change a message that was already expunged in backend mailbox.
author Timo Sirainen <tss@iki.fi>
date Mon, 31 Aug 2009 19:32:05 -0400
parents 39561fccb623
children 070e5e24df41
files src/plugins/virtual/virtual-sync.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/plugins/virtual/virtual-sync.c	Mon Aug 31 19:16:12 2009 -0400
+++ b/src/plugins/virtual/virtual-sync.c	Mon Aug 31 19:32:05 2009 -0400
@@ -370,8 +370,10 @@
 			continue;
 
 		virtual_backend_box_sync_mail_set(bbox);
-		if (!mail_set_uid(bbox->sync_mail, vrec->real_uid))
-			i_panic("UID lost unexpectedly");
+		if (!mail_set_uid(bbox->sync_mail, vrec->real_uid)) {
+			/* message is already expunged from backend mailbox. */
+			continue;
+		}
 
 		switch (sync_rec->type) {
 		case MAIL_INDEX_SYNC_TYPE_EXPUNGE: