mirror of
https://github.com/neovim/neovim
synced 2025-07-16 01:01:49 +00:00
Merge pull request #22026 from neovim/backport-21793-to-release-0.8
[Backport release-0.8] fix(rbuffer): handle edge case where write_ptr has wrapped around too early
This commit is contained in:
@ -164,7 +164,8 @@ void rbuffer_consumed_compact(RBuffer *buf, size_t count)
|
||||
assert(buf->read_ptr <= buf->write_ptr);
|
||||
rbuffer_consumed(buf, count);
|
||||
if (buf->read_ptr > buf->start_ptr) {
|
||||
assert((size_t)(buf->read_ptr - buf->write_ptr) == buf->size);
|
||||
assert((size_t)(buf->write_ptr - buf->read_ptr) == buf->size
|
||||
|| buf->write_ptr == buf->start_ptr);
|
||||
memmove(buf->start_ptr, buf->read_ptr, buf->size);
|
||||
buf->read_ptr = buf->start_ptr;
|
||||
buf->write_ptr = buf->read_ptr + buf->size;
|
||||
|
Reference in New Issue
Block a user