Mercurial > dovecot > original-hg > dovecot-1.2
changeset 1315:d69f8b4adaf6 HEAD
FETCH BODY[part]<partial> didn't work correctly
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Mon, 24 Mar 2003 14:59:49 +0200 |
parents | bd8e8495c7b3 |
children | 02dc0b35af64 |
files | src/imap/imap-fetch-body-section.c |
diffstat | 1 files changed, 8 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/imap/imap-fetch-body-section.c Sat Mar 22 21:13:31 2003 +0200 +++ b/src/imap/imap-fetch-body-section.c Mon Mar 24 14:59:49 2003 +0200 @@ -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;