Mercurial > dovecot > core-2.2
changeset 19638:dee68e5ac7b1
lib: Small istream-concat code cleanup in preperation for next change
No actual changes, just moved some code into i_stream_concat_skip().
author | Timo Sirainen <timo.sirainen@dovecot.fi> |
---|---|
date | Tue, 26 Jan 2016 15:17:34 +0200 |
parents | 1c25fe4c74a0 |
children | e583f67b241e |
files | src/lib/istream-concat.c |
diffstat | 1 files changed, 19 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib/istream-concat.c Tue Jan 26 14:19:23 2016 +0200 +++ b/src/lib/istream-concat.c Tue Jan 26 15:17:34 2016 +0200 @@ -85,19 +85,10 @@ cstream->istream.pos = data_size; } -static ssize_t i_stream_concat_read(struct istream_private *stream) +static void i_stream_concat_skip(struct concat_istream *cstream) { - struct concat_istream *cstream = (struct concat_istream *)stream; - const unsigned char *data; - size_t size, data_size, cur_data_pos, new_pos, bytes_skipped; - size_t new_bytes_count; - ssize_t ret; - bool last_stream; - - if (cstream->cur_input == NULL) { - stream->istream.stream_errno = EINVAL; - return -1; - } + struct istream_private *stream = &cstream->istream; + size_t bytes_skipped; i_assert(stream->skip >= cstream->prev_skip); bytes_skipped = stream->skip - cstream->prev_skip; @@ -118,6 +109,22 @@ stream->buffer += bytes_skipped; cstream->prev_skip = stream->skip; i_stream_skip(cstream->cur_input, bytes_skipped); +} + +static ssize_t i_stream_concat_read(struct istream_private *stream) +{ + struct concat_istream *cstream = (struct concat_istream *)stream; + const unsigned char *data; + size_t size, data_size, cur_data_pos, new_pos; + size_t new_bytes_count; + ssize_t ret; + bool last_stream; + + if (cstream->cur_input == NULL) { + stream->istream.stream_errno = EINVAL; + return -1; + } + i_stream_concat_skip(cstream); i_assert(stream->pos >= stream->skip + cstream->prev_stream_left); cur_data_pos = stream->pos - (stream->skip + cstream->prev_stream_left);