changeset 11428:e5b491043b5e HEAD

If read() from a mail stream fails, log the stream name (filename typically).
author Timo Sirainen <tss@iki.fi>
date Mon, 31 May 2010 15:12:57 +0100
parents 4faaf5b037d5
children 4199565b9ce2
files src/imap/imap-fetch-body.c src/lib-storage/index/index-mail.c
diffstat 2 files changed, 6 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/imap/imap-fetch-body.c	Fri May 28 18:30:55 2010 +0100
+++ b/src/imap/imap-fetch-body.c	Mon May 31 15:12:57 2010 +0100
@@ -9,7 +9,7 @@
 #include "istream-header-filter.h"
 #include "message-parser.h"
 #include "message-send.h"
-#include "mail-storage.h"
+#include "mail-storage-private.h"
 #include "imap-parser.h"
 #include "imap-fetch.h"
 
@@ -46,8 +46,9 @@
 static void fetch_read_error(struct imap_fetch_context *ctx)
 {
 	errno = ctx->cur_input->stream_errno;
-	i_error("FETCH for mailbox %s UID %u "
-		"failed to read message input: %m",
+	mail_storage_set_critical(ctx->box->storage,
+		"read(%s) failed: %m (FETCH for mailbox %s UID %u)",
+		i_stream_get_name(ctx->cur_input),
 		mailbox_get_vname(ctx->mail->box), ctx->mail->uid);
 }
 
--- a/src/lib-storage/index/index-mail.c	Fri May 28 18:30:55 2010 +0100
+++ b/src/lib-storage/index/index-mail.c	Mon May 31 15:12:57 2010 +0100
@@ -757,7 +757,8 @@
 
 	errno = mail->data.stream->stream_errno;
 	mail_storage_set_critical(mail->mail.mail.box->storage,
-		"read(mail, uid=%u) failed: %m", mail->mail.mail.uid);
+		"read(%s) failed: %m (uid=%u)",
+		i_stream_get_name(mail->data.stream), mail->mail.mail.uid);
 	return -1;
 }