{
struct seekable_istream *sstream = (struct seekable_istream *)stream;
const struct stat *st;
- uoff_t old_offset;
+ uoff_t old_offset, len;
ssize_t ret;
if (sstream->size != (uoff_t)-1) {
sstream->cur_input->v_offset);
}
i_stream_skip(&stream->istream, stream->pos - stream->skip);
+ len = stream->pos;
i_stream_seek(&stream->istream, old_offset);
unref_streams(sstream);
/* buffer is completely in memory */
i_assert(sstream->fd == -1);
- stream->statbuf.st_size = stream->pos;
+ stream->statbuf.st_size = len;
}
return 0;
}