Mercurial > dovecot > core-2.2
changeset 22500:bf1220873408
lib-compression: Fix assert in i_stream_zlib_seek
Also fix same bug in i_stream_bzlib_seek, i_stream_lz4_seek, i_stream_lzma_seek.
author | Anton Yuzhaninov <citrin@citrin.ru> |
---|---|
date | Wed, 30 Aug 2017 20:49:17 -0400 |
parents | 87723fc92363 |
children | 99a2b945045f |
files | src/lib-compression/istream-bzlib.c src/lib-compression/istream-lz4.c src/lib-compression/istream-lzma.c src/lib-compression/istream-zlib.c |
diffstat | 4 files changed, 8 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-compression/istream-bzlib.c Fri Jul 14 17:00:21 2017 +0300 +++ b/src/lib-compression/istream-bzlib.c Wed Aug 30 20:49:17 2017 -0400 @@ -226,7 +226,7 @@ stream->pos = stream->skip; } else { /* read and cache forward */ - ssize_t ret = -1; + ssize_t ret; do { size_t avail = stream->pos - stream->skip; @@ -235,6 +235,7 @@ i_stream_skip(&stream->istream, v_offset - stream->istream.v_offset); + ret = -1; break; }
--- a/src/lib-compression/istream-lz4.c Fri Jul 14 17:00:21 2017 +0300 +++ b/src/lib-compression/istream-lz4.c Wed Aug 30 20:49:17 2017 -0400 @@ -206,7 +206,7 @@ stream->pos = stream->skip; } else { /* read and cache forward */ - ssize_t ret = -1; + ssize_t ret; do { size_t avail = stream->pos - stream->skip; @@ -215,6 +215,7 @@ i_stream_skip(&stream->istream, v_offset - stream->istream.v_offset); + ret = -1; break; }
--- a/src/lib-compression/istream-lzma.c Fri Jul 14 17:00:21 2017 +0300 +++ b/src/lib-compression/istream-lzma.c Wed Aug 30 20:49:17 2017 -0400 @@ -235,7 +235,7 @@ stream->pos = stream->skip; } else { /* read and cache forward */ - ssize_t ret = -1; + ssize_t ret; do { size_t avail = stream->pos - stream->skip; @@ -244,6 +244,7 @@ i_stream_skip(&stream->istream, v_offset - stream->istream.v_offset); + ret = -1; break; }
--- a/src/lib-compression/istream-zlib.c Fri Jul 14 17:00:21 2017 +0300 +++ b/src/lib-compression/istream-zlib.c Wed Aug 30 20:49:17 2017 -0400 @@ -398,7 +398,7 @@ stream->pos = stream->skip; } else { /* read and cache forward */ - ssize_t ret = -1; + ssize_t ret; do { size_t avail = stream->pos - stream->skip; @@ -407,6 +407,7 @@ i_stream_skip(&stream->istream, v_offset - stream->istream.v_offset); + ret = -1; break; }