commit be3d2f512528f8a99acc262ead8b88d38153759d
parent 45bee1dafd0d4042f3b22928b5cc6021a1772bb7
Author: bfredl <bjorn.linse@gmail.com>
Date: Sat, 25 Jun 2022 19:00:35 +0200
perf(ui): avoid ui_flush() work in headless mode
Diffstat:
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/src/nvim/ui.c b/src/nvim/ui.c
@@ -503,6 +503,9 @@ handle_T ui_cursor_grid(void)
void ui_flush(void)
{
+ if (!ui_active()) {
+ return;
+ }
cmdline_ui_flush();
win_ui_flush();
msg_ext_ui_flush();
diff --git a/test/functional/ui/options_spec.lua b/test/functional/ui/options_spec.lua
@@ -51,7 +51,7 @@ describe('UI receives option updates', function()
end)
it('on attach #11372', function()
- clear()
+ clear{args_rm={'--headless'}}
local evs = {}
screen = Screen.new(20,5)
-- Override mouse_on/mouse_off handlers.
@@ -88,6 +88,13 @@ describe('UI receives option updates', function()
eq(expected, screen.options)
end)
+ command("set pumblend=50")
+ expected.pumblend = 50
+ screen:expect(function()
+ eq(expected, screen.options)
+ end)
+
+ -- check handling of out-of-bounds value
command("set pumblend=-1")
expected.pumblend = 0
screen:expect(function()