changeset 18713:1044c55fb4ef

imap: Fixed crash in FETCH RFC822* caused by earlier commit
author Timo Sirainen <tss@iki.fi>
date Sat, 16 May 2015 11:47:09 +0300
parents 0b13bfe5d09b
children dcaf508860ad
files src/imap/imap-fetch-body.c
diffstat 1 files changed, 3 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/imap/imap-fetch-body.c	Fri May 15 21:36:07 2015 +0300
+++ b/src/imap/imap-fetch-body.c	Sat May 16 11:47:09 2015 +0300
@@ -494,6 +494,7 @@
 	const char *str;
 
 	msgpart = imap_msgpart_full();
+	fetch_state_update_stats(ctx, msgpart);
 	if (fetch_and_free_msgpart(ctx, mail, &msgpart) < 0)
 		return -1;
 
@@ -503,7 +504,6 @@
 		str++; ctx->state.cur_first = FALSE;
 	}
 	o_stream_nsend_str(ctx->client->output, str);
-	fetch_state_update_stats(ctx, msgpart);
 
 	ctx->state.cur_human_name = "RFC822";
 	return ctx->state.cont_handler(ctx);
@@ -517,6 +517,7 @@
 	const char *str;
 
 	msgpart = imap_msgpart_header();
+	fetch_state_update_stats(ctx, msgpart);
 	if (fetch_and_free_msgpart(ctx, mail, &msgpart) < 0)
 		return -1;
 
@@ -526,7 +527,6 @@
 		str++; ctx->state.cur_first = FALSE;
 	}
 	o_stream_nsend_str(ctx->client->output, str);
-	fetch_state_update_stats(ctx, msgpart);
 
 	ctx->state.cur_human_name = "RFC822.HEADER";
 	return ctx->state.cont_handler(ctx);
@@ -540,6 +540,7 @@
 	const char *str;
 
 	msgpart = imap_msgpart_body();
+	fetch_state_update_stats(ctx, msgpart);
 	if (fetch_and_free_msgpart(ctx, mail, &msgpart) < 0)
 		return -1;
 
@@ -549,7 +550,6 @@
 		str++; ctx->state.cur_first = FALSE;
 	}
 	o_stream_nsend_str(ctx->client->output, str);
-	fetch_state_update_stats(ctx, msgpart);
 
 	ctx->state.cur_human_name = "RFC822.TEXT";
 	return ctx->state.cont_handler(ctx);