diff options
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r-- | src/nvim/ex_docmd.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index ca79270fcc..5dae96d774 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -71,6 +71,7 @@ #include "nvim/os/time.h" #include "nvim/ex_cmds_defs.h" #include "nvim/mouse.h" +#include "nvim/msgpack_rpc/channel.h" static int quitmore = 0; static int ex_pressedreturn = FALSE; @@ -5398,10 +5399,16 @@ static void ex_stop(exarg_T *eap) /* * Disallow suspending for "rvim". */ - if (!check_restricted() - ) { - if (!eap->forceit) + if (!check_restricted()) { + if (!eap->forceit) { autowrite_all(); + } + + if (abstract_ui) { + channel_close(last_message_source); + return; + } + windgoto((int)Rows - 1, 0); out_char('\n'); out_flush(); |