[dovecot-cvs] dovecot/src/imap imap-fetch-body-section.c,1.6,1.7

cras at procontrol.fi cras at procontrol.fi
Mon Mar 24 14:59:51 EET 2003


Update of /home/cvs/dovecot/src/imap
In directory danu:/tmp/cvs-serv26378

Modified Files:
	imap-fetch-body-section.c 
Log Message:
FETCH BODY[part]<partial> didn't work correctly



Index: imap-fetch-body-section.c
===================================================================
RCS file: /home/cvs/dovecot/src/imap/imap-fetch-body-section.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- imap-fetch-body-section.c	18 Mar 2003 00:29:49 -0000	1.6
+++ imap-fetch-body-section.c	24 Mar 2003 12:59:49 -0000	1.7
@@ -445,10 +445,16 @@
 {
 	const char *str;
 	int skip_cr;
+	uoff_t size;
 	off_t ret;
 
-	str = t_strdup_printf("%s {%"PRIuUOFF_T"}\r\n",
-			      ctx->prefix, part->body_size.virtual_size);
+	if (body->skip >= part->body_size.virtual_size)
+		size = 0;
+	else {
+		size = part->body_size.virtual_size - body->skip;
+		if (size > body->max_size) size = body->max_size;
+	}
+	str = t_strdup_printf("%s {%"PRIuUOFF_T"}\r\n", ctx->prefix, size);
 	if (o_stream_send_str(ctx->output, str) < 0)
 		return FALSE;
 




More information about the dovecot-cvs mailing list