aboutsummaryrefslogtreecommitdiff
path: root/test/functional/api/server_requests_spec.lua
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-02-09 10:53:47 +0800
committerGitHub <noreply@github.com>2023-02-09 10:53:47 +0800
commitecc40660d1577835245d99f95e14762a30d36054 (patch)
tree53cbb6ed1d26c80dcf0036603f9b17c9970d93cb /test/functional/api/server_requests_spec.lua
parentffd216e869fd7c18b9f608173c929500e26fe070 (diff)
downloadrneovim-ecc40660d1577835245d99f95e14762a30d36054.tar.gz
rneovim-ecc40660d1577835245d99f95e14762a30d36054.tar.bz2
rneovim-ecc40660d1577835245d99f95e14762a30d36054.zip
fix(rpc): ignore redraw events when not in UI client (#21892)
Otherwise it will crash.
Diffstat (limited to 'test/functional/api/server_requests_spec.lua')
-rw-r--r--test/functional/api/server_requests_spec.lua15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/functional/api/server_requests_spec.lua b/test/functional/api/server_requests_spec.lua
index ceff390dc5..e6bfc6b64f 100644
--- a/test/functional/api/server_requests_spec.lua
+++ b/test/functional/api/server_requests_spec.lua
@@ -337,6 +337,21 @@ describe('server -> client', function()
eq('localhost:', string.sub(address,1,10))
connect_test(server, 'tcp', address)
end)
+
+ it('does not crash on receiving UI events', function()
+ local server = spawn(nvim_argv)
+ set_session(server)
+ local address = funcs.serverlist()[1]
+ local client = spawn(nvim_argv, false, nil, true)
+ set_session(client)
+
+ local id = funcs.sockconnect('pipe', address, {rpc=true})
+ funcs.rpcrequest(id, 'nvim_ui_attach', 80, 24, {})
+ assert_alive()
+
+ server:close()
+ client:close()
+ end)
end)
describe('connecting to its own pipe address', function()