changeset 9351:170c03680738 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:31:49 -0400
parents 4e031f3d9083
children 8bf54859b19b
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:15:00 2009 -0400
+++ b/src/plugins/virtual/virtual-sync.c	Mon Aug 31 19:31:49 2009 -0400
@@ -371,8 +371,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: