aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_docmd.c
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2019-06-04 09:20:59 +0200
committerGitHub <noreply@github.com>2019-06-04 09:20:59 +0200
commit2ae5427b3cfdd20353584299524c650c26f8fd17 (patch)
treef91203398811c754206c8831d03172e47eb2a305 /src/nvim/ex_docmd.c
parent58f505dc7432cad76269ee447029eb1ad94b5aeb (diff)
parent5f41ca4013d17a81fcfd0a7b0be0422cb9cc25ec (diff)
downloadrneovim-2ae5427b3cfdd20353584299524c650c26f8fd17.tar.gz
rneovim-2ae5427b3cfdd20353584299524c650c26f8fd17.tar.bz2
rneovim-2ae5427b3cfdd20353584299524c650c26f8fd17.zip
Merge #10113 from janlazo/vim-8.0.1518
vim-patch:8.0.1518,8.1.{2,804}
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r--src/nvim/ex_docmd.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c
index ec4b16fbb0..7a7b20c35f 100644
--- a/src/nvim/ex_docmd.c
+++ b/src/nvim/ex_docmd.c
@@ -2217,11 +2217,19 @@ static char_u * do_one_cmd(char_u **cmdlinep,
ea.arg = skipwhite(p);
}
- /*
- * 7. Switch on command name.
- *
- * The "ea" structure holds the arguments that can be used.
- */
+ // The :try command saves the emsg_silent flag, reset it here when
+ // ":silent! try" was used, it should only apply to :try itself.
+ if (ea.cmdidx == CMD_try && did_esilent > 0) {
+ emsg_silent -= did_esilent;
+ if (emsg_silent < 0) {
+ emsg_silent = 0;
+ }
+ did_esilent = 0;
+ }
+
+ // 7. Execute the command.
+ //
+ // The "ea" structure holds the arguments that can be used.
ea.cmdlinep = cmdlinep;
ea.getline = fgetline;
ea.cookie = cookie;