changeset 22351:ea5c90328bcb

virtual: Append virtual mailbox information to get stream reason
author Aki Tuomi <aki.tuomi@dovecot.fi>
date Wed, 05 Jul 2017 15:20:18 +0300
parents 55cd5207d961
children d0c01cdc09c3
files src/plugins/virtual/virtual-mail.c
diffstat 1 files changed, 9 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/plugins/virtual/virtual-mail.c	Wed Jul 05 14:24:49 2017 +0300
+++ b/src/plugins/virtual/virtual-mail.c	Wed Jul 05 15:20:18 2017 +0300
@@ -428,17 +428,23 @@
 			struct istream **stream_r)
 {
 	struct virtual_mail *vmail = (struct virtual_mail *)mail;
+	struct mail_private *vp = (struct mail_private *)mail;
 	struct mail *backend_mail;
+	const char *reason = t_strdup_printf("virtual mailbox %s: Opened mail UID=%u: %s",
+					     mailbox_get_vname(mail->box), mail->uid, vp->get_stream_reason);
 	int ret;
 
 	if (backend_mail_get(vmail, &backend_mail) < 0)
 		return -1;
+
 	if (get_body) {
-		ret = mail_get_stream(backend_mail, hdr_size, body_size,
-				      stream_r);
+		ret = mail_get_stream_because(backend_mail, hdr_size, body_size,
+					      reason, stream_r);
 	} else {
-		ret = mail_get_hdr_stream(backend_mail, hdr_size, stream_r);
+		ret = mail_get_hdr_stream_because(backend_mail, hdr_size,
+						  reason, stream_r);
 	}
+
 	if (ret < 0) {
 		virtual_box_copy_error(mail->box, backend_mail->box);
 		return -1;