changeset 7135:9fef306a0d95 HEAD

Changed assert to first check if dotlock had been overridden, and if so log an error instead of crashing.
author Timo Sirainen <tss@iki.fi>
date Mon, 07 Jan 2008 07:38:16 +0200
parents 9c2b65bfe604
children 24526ffec9a2
files src/lib-storage/index/maildir/maildir-uidlist.c
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/index/maildir/maildir-uidlist.c	Mon Jan 07 07:37:37 2008 +0200
+++ b/src/lib-storage/index/maildir/maildir-uidlist.c	Mon Jan 07 07:38:16 2008 +0200
@@ -1015,8 +1015,13 @@
 		i_error("fstat(%s) failed: %m", temp_path);
 		(void)close(fd);
 		ret = -1;
+	} else if (file_size != (uoff_t)st.st_size) {
+		i_assert(!file_dotlock_is_locked(uidlist->dotlock));
+		i_error("Maildir uidlist dotlock overridden: %s",
+			uidlist->path);
+		(void)close(fd);
+		ret = -1;
 	} else {
-		i_assert(file_size == (uoff_t)st.st_size);
 		maildir_uidlist_close(uidlist);
 		uidlist->fd = fd;
 		uidlist->fd_dev = st.st_dev;