dovecot-2.0-sslstream: mbox: raw mbox stream's stat() now return...

dovecot at dovecot.org dovecot at dovecot.org
Sat Feb 13 03:00:50 EET 2010


details:   http://hg.dovecot.org/dovecot-2.0-sslstream/rev/b1597605c3ef
changeset: 10652:b1597605c3ef
user:      Timo Sirainen <tss at iki.fi>
date:      Sat Feb 06 23:22:15 2010 +0200
description:
mbox: raw mbox stream's stat() now returns mail size as stream size if it's known.

diffstat:

1 file changed, 4 insertions(+), 1 deletion(-)
src/lib-storage/index/mbox/istream-raw-mbox.c |    5 ++++-

diffs (21 lines):

diff -r e9f4efacf692 -r b1597605c3ef src/lib-storage/index/mbox/istream-raw-mbox.c
--- a/src/lib-storage/index/mbox/istream-raw-mbox.c	Sat Feb 06 23:22:04 2010 +0200
+++ b/src/lib-storage/index/mbox/istream-raw-mbox.c	Sat Feb 06 23:22:15 2010 +0200
@@ -410,13 +410,16 @@ i_stream_raw_mbox_stat(struct istream_pr
 i_stream_raw_mbox_stat(struct istream_private *stream, bool exact)
 {
 	const struct stat *st;
+	struct raw_mbox_istream *rstream = (struct raw_mbox_istream *)stream;
 
 	st = i_stream_stat(stream->parent, exact);
 	if (st == NULL)
 		return NULL;
 
 	stream->statbuf = *st;
-	stream->statbuf.st_size = -1;
+	stream->statbuf.st_size =
+		!exact && rstream->seeked && rstream->mail_size != (uoff_t)-1 ?
+		(off_t)rstream->mail_size : -1;
 	return &stream->statbuf;
 }
 


More information about the dovecot-cvs mailing list