diff options
Diffstat (limited to 'src/buffer.c')
-rw-r--r-- | src/buffer.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c index d55b88d4d..ac0c43e21 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -208,6 +208,9 @@ read_buffers (int fd, rspamd_io_dispatcher_t * d, gboolean skip_read) return; } /* Move remaining string to begin of buffer (draining) */ + /* Reinit pointers as buffer may be changed */ + len = &d->in_buf->data->len; + pos = &d->in_buf->pos; memmove (d->in_buf->data->begin, c + 1, *len - r - 1); b = d->in_buf->data->begin; c = b; @@ -236,6 +239,8 @@ read_buffers (int fd, rspamd_io_dispatcher_t * d, gboolean skip_read) return; } /* Move remaining string to begin of buffer (draining) */ + len = &d->in_buf->data->len; + pos = &d->in_buf->pos; memmove (d->in_buf->data->begin, c, *len - r); b = d->in_buf->data->begin; c = b; |