From 868d43d3cb92575a31788a6f24e01ac9dfdccdc0 Mon Sep 17 00:00:00 2001 From: roxma Date: Sun, 15 Oct 2017 00:49:17 +0800 Subject: [PATCH] fix roxma/nvim-completion-manager#52 --- autoload/neovim_rpc.vim | 2 +- pythonx/neovim_rpc_server.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/autoload/neovim_rpc.vim b/autoload/neovim_rpc.vim index 610c7d2..e123427 100644 --- a/autoload/neovim_rpc.vim +++ b/autoload/neovim_rpc.vim @@ -25,7 +25,7 @@ func! neovim_rpc#serveraddr() let g:_neovim_rpc_main_channel = ch_open(g:_neovim_rpc_vim_server) " close channel before vim exit - au VimLeavePre * let s:leaving = 1 | execute s:py . ' neovim_rpc_server.stop()' + " au VimLeavePre * let s:leaving = 1 | execute s:py . ' neovim_rpc_server.stop()' " identify myself call ch_sendexpr(g:_neovim_rpc_main_channel,'neovim_rpc_setup') diff --git a/pythonx/neovim_rpc_server.py b/pythonx/neovim_rpc_server.py index 1d12f0b..7ce386e 100644 --- a/pythonx/neovim_rpc_server.py +++ b/pythonx/neovim_rpc_server.py @@ -305,11 +305,13 @@ class ThreadedTCPServer(socketserver.ThreadingMixIn, socketserver.TCPServer): global _nvim_server _vim_server = ThreadedTCPServer(("127.0.0.1", 0), VimHandler) _nvim_server = ThreadedTCPServer(("127.0.0.1", 0), NvimHandler) + _vim_server.daemon_threads = True + _nvim_server.daemon_threads = True # Start a thread with the server -- that thread will then start one # more thread for each request - main_server_thread = threading.Thread(target=_vim_server.serve_forever) - clients_server_thread = threading.Thread(target=_nvim_server.serve_forever) + main_server_thread = threading.Thread(target=_vim_server.serve_forever, daemon=True) + clients_server_thread = threading.Thread(target=_nvim_server.serve_forever, daemon=True) # Exit the server thread when the main thread terminates main_server_thread.daemon = True