Mercurial > dovecot > core-2.2
diff src/lib/istream-limit.c @ 14964:6d2be8d8891c
i_stream_stat() API changed.
This fixes also one missing error check.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 28 Aug 2012 22:40:57 +0300 |
parents | 34e4c04ae679 |
children | 90710c6c3beb |
line wrap: on
line diff
--- a/src/lib/istream-limit.c Tue Aug 28 22:20:17 2012 +0300 +++ b/src/lib/istream-limit.c Tue Aug 28 22:40:57 2012 +0300 @@ -71,20 +71,19 @@ return ret; } -static const struct stat * +static int i_stream_limit_stat(struct istream_private *stream, bool exact) { struct limit_istream *lstream = (struct limit_istream *) stream; const struct stat *st; - st = i_stream_stat(stream->parent, exact); - if (st == NULL) - return NULL; + if (i_stream_stat(stream->parent, exact, &st) < 0) + return -1; stream->statbuf = *st; if (lstream->v_size != (uoff_t)-1) stream->statbuf.st_size = lstream->v_size; - return &stream->statbuf; + return 0; } static int i_stream_limit_get_size(struct istream_private *stream, @@ -98,8 +97,7 @@ return 1; } - st = i_stream_stat(&stream->istream, exact); - if (st == NULL) + if (i_stream_stat(&stream->istream, exact, &st) < 0) return -1; if (st->st_size == -1) return 0;