diff options
author | Mathias Fußenegger <mfussenegger@users.noreply.github.com> | 2022-08-09 22:20:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-09 22:20:40 +0200 |
commit | bebfbfab3bca1808678bb196904b7570d6806458 (patch) | |
tree | 49004ad4a5525fa56cdda1e0138f2f52ab931ddc /scripts/gen_vimdoc.py | |
parent | 3030b4d65345baaa92606ad47e53573463c842d8 (diff) | |
download | rneovim-bebfbfab3bca1808678bb196904b7570d6806458.tar.gz rneovim-bebfbfab3bca1808678bb196904b7570d6806458.tar.bz2 rneovim-bebfbfab3bca1808678bb196904b7570d6806458.zip |
fix(lsp): handle multiple clients with incremental sync (#19658)
The change tracking used a single lines/lines_tmp table to track
changes to a buffer.
If multiple clients using incremental sync are connected to a buffer,
they both made changes to the same lines table. That resulted in an
inconsistent state.
This commit changes the didChange handling to group clients by
synchronization scheme and offset encoding.
This avoids computing the diff multiple times for clients using the
same scheme and resolves the lines/lines_tmp conflicts.
Fixes https://github.com/neovim/neovim/issues/19325
Diffstat (limited to 'scripts/gen_vimdoc.py')
0 files changed, 0 insertions, 0 deletions