Mercurial > dovecot > original-hg > dovecot-1.2
changeset 5964:29d08e7bbf63 HEAD
Add ,W=<virtual size> to saved maildir filenames.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Thu, 12 Jul 2007 06:14:37 +0300 |
parents | 9bef18690777 |
children | 921bc18b164a |
files | src/lib-storage/index/maildir/maildir-save.c |
diffstat | 1 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/maildir/maildir-save.c Thu Jul 12 06:12:44 2007 +0300 +++ b/src/lib-storage/index/maildir/maildir-save.c Thu Jul 12 06:14:37 2007 +0300 @@ -27,7 +27,7 @@ struct maildir_filename *next; const char *basename; - uoff_t size; + uoff_t size, vsize; enum mail_flags flags; unsigned int keywords_count; /* unsigned int keywords[]; */ @@ -193,6 +193,7 @@ mf->basename = p_strdup(ctx->pool, base_fname); mf->flags = flags; mf->size = (uoff_t)-1; + mf->vsize = (uoff_t)-1; ctx->file_last = mf; i_assert(*ctx->files_tail == NULL); @@ -272,6 +273,11 @@ basename, mf->size); } + if (mf->vsize != (uoff_t)-1) { + basename = t_strdup_printf("%s,W=%"PRIuUOFF_T, + basename, mf->vsize); + } + if (mf->keywords_count == 0) { if ((mf->flags & MAIL_FLAGS_MASK) == MAIL_RECENT) { *fname_r = basename; @@ -490,6 +496,8 @@ /* remember the size in case we want to add it to filename */ ctx->file_last->size = ctx->output->offset; + ctx->file_last->vsize = ctx->cur_dest_mail == NULL ? (uoff_t)-1 : + mail_get_virtual_size(ctx->cur_dest_mail); t_push(); path = t_strconcat(ctx->tmpdir, "/", ctx->file_last->basename, NULL);