diff src/lib-index/mbox/mbox-append.c @ 196:95d21ab87eeb HEAD

X-IMAPbase is now parsed correctly.
author Timo Sirainen <tss@iki.fi>
date Mon, 09 Sep 2002 05:11:01 +0300
parents 4223b9ed0c80
children 0bb7bf7266ab
line wrap: on
line diff
--- a/src/lib-index/mbox/mbox-append.c	Sun Sep 08 18:34:27 2002 +0300
+++ b/src/lib-index/mbox/mbox-append.c	Mon Sep 09 05:11:01 2002 +0300
@@ -84,6 +84,7 @@
 	uoff_t abs_start_offset, stop_offset, old_size;
 	unsigned char *data, md5_digest[16];
 	size_t size, pos;
+	int failed;
 
 	/* get the From-line */
 	pos = 0;
@@ -153,14 +154,17 @@
 	if (!index->update_end(update)) {
 		/* failed - delete the record */
 		(void)index->expunge(index, rec, 0, FALSE);
-		return FALSE;
+		failed = TRUE;
+	} else {
+		/* save message flags */
+		rec->msg_flags = ctx.flags;
+		mail_index_mark_flag_changes(index, rec, 0, rec->msg_flags);
+		failed = FALSE;
 	}
 
-	/* save message flags */
-	rec->msg_flags = ctx.flags;
-	mail_index_mark_flag_changes(index, rec, 0, rec->msg_flags);
+	mbox_header_free_context(&ctx);
 
-	return TRUE;
+	return !failed;
 }
 
 int mbox_index_append(MailIndex *index, IOBuffer *inbuf)