aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2020-02-16 23:54:24 -0800
committerGitHub <noreply@github.com>2020-02-16 23:54:24 -0800
commita2efc9cf8b0fdf14b01156ba424145e1847f789c (patch)
tree3121cd136e6aeed96446413e848b89a2a16f4290 /src
parentb353a5c05f026f46aeef0843007ba9c553533248 (diff)
downloadrneovim-a2efc9cf8b0fdf14b01156ba424145e1847f789c.tar.gz
rneovim-a2efc9cf8b0fdf14b01156ba424145e1847f789c.tar.bz2
rneovim-a2efc9cf8b0fdf14b01156ba424145e1847f789c.zip
loop_close: timout after 2 seconds #11821
never UV_RUN_DEFAULT ref #11820 ref #7376
Diffstat (limited to 'src')
-rw-r--r--src/nvim/event/loop.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/event/loop.c b/src/nvim/event/loop.c
index c2be472acd..664f3ad89d 100644
--- a/src/nvim/event/loop.c
+++ b/src/nvim/event/loop.c
@@ -127,8 +127,8 @@ bool loop_close(Loop *loop, bool wait)
uv_close((uv_handle_t *)&loop->async, NULL);
uint64_t start = wait ? os_hrtime() : 0;
while (true) {
- uv_run(&loop->uv, wait ? UV_RUN_DEFAULT : UV_RUN_NOWAIT);
- if (!uv_loop_close(&loop->uv) || !wait) {
+ uv_run(&loop->uv, UV_RUN_NOWAIT);
+ if (!wait || (uv_loop_close(&loop->uv) != UV_EBUSY)) {
break;
}
if (os_hrtime() - start >= 2 * 1000000000) {