From 0f198b7819f58a9568370377cfed760470aab736 Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sat, 6 Feb 2010 23:22:15 +0200 Subject: [PATCH] mbox: raw mbox stream's stat() now returns mail size as stream size if it's known. --HG-- branch : HEAD --- src/lib-storage/index/mbox/istream-raw-mbox.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib-storage/index/mbox/istream-raw-mbox.c b/src/lib-storage/index/mbox/istream-raw-mbox.c index 97fce1f02c..c4eb57de15 100644 --- a/src/lib-storage/index/mbox/istream-raw-mbox.c +++ b/src/lib-storage/index/mbox/istream-raw-mbox.c @@ -410,13 +410,16 @@ static const struct stat * 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; } -- 2.47.3