diff options
author | bfredl <bjorn.linse@gmail.com> | 2022-06-16 19:17:57 +0200 |
---|---|---|
committer | bfredl <bjorn.linse@gmail.com> | 2022-07-18 14:08:44 +0200 |
commit | 67a04fe6cb0f6b0cd3d44ae37b7caddddda198ea (patch) | |
tree | bb7f51c543dd03e6303e91d81fc592b1283e03c3 /src/nvim/ui.c | |
parent | 1b462705d049fa0cf2bb99bae9112b84abea8d5a (diff) | |
download | rneovim-67a04fe6cb0f6b0cd3d44ae37b7caddddda198ea.tar.gz rneovim-67a04fe6cb0f6b0cd3d44ae37b7caddddda198ea.tar.bz2 rneovim-67a04fe6cb0f6b0cd3d44ae37b7caddddda198ea.zip |
perf(ui): unpack a single ui event at a time, instead of a "redraw" batch
This reduces the memory overhead for large redraw batches, as a much smaller
prefix of the api object buffer is used and needs to be hot in cache.
Diffstat (limited to 'src/nvim/ui.c')
-rw-r--r-- | src/nvim/ui.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nvim/ui.c b/src/nvim/ui.c index a49e9df9ee..27fa1c402c 100644 --- a/src/nvim/ui.c +++ b/src/nvim/ui.c @@ -348,7 +348,8 @@ void ui_attach_impl(UI *ui, uint64_t chanid) if (ui_count == MAX_UI_COUNT) { abort(); } - if (!ui->ui_ext[kUIMultigrid] && !ui->ui_ext[kUIFloatDebug]) { + if (!ui->ui_ext[kUIMultigrid] && !ui->ui_ext[kUIFloatDebug] + && !ui_client_channel_id) { ui_comp_attach(ui); } |