changeset 5320:2d53914a4520 HEAD

Error handling fixes
author Timo Sirainen <tss@iki.fi>
date Thu, 15 Mar 2007 03:52:49 +0200
parents 0fc29ba873f1
children 7c1090fbbc63
files src/lib-index/mailbox-list-index.c
diffstat 1 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-index/mailbox-list-index.c	Thu Mar 15 03:50:35 2007 +0200
+++ b/src/lib-index/mailbox-list-index.c	Thu Mar 15 03:52:49 2007 +0200
@@ -118,11 +118,17 @@
 	if (hdr->next_uid == 0)
 		return mailbox_list_index_set_corrupted(index, "next_uid is 0");
 
+	if (index->mail_index->hdr == NULL) {
+		/* index already marked as corrupted */
+		return -1;
+	}
+
 	if (hdr->uid_validity != index->mail_index->hdr->uid_validity &&
 	    index->mail_index->hdr->uid_validity != 0) {
 		mail_index_set_error(index->mail_index,
 			"uid_validity changed in file %s", index->filepath);
 		mail_index_mark_corrupted(index->mail_index);
+		return -1;
 	}
 
 	return 0;