Mercurial > vim
comparison src/channel.c @ 18949:5c405689da3e v8.2.0035
patch 8.2.0035: saving and restoring called_emsg is clumsy
Commit: https://github.com/vim/vim/commit/53989554a44caca0964376d60297f08ec257c53c
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Dec 23 22:59:18 2019 +0100
patch 8.2.0035: saving and restoring called_emsg is clumsy
Problem: Saving and restoring called_emsg is clumsy.
Solution: Count the number of error messages.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 23 Dec 2019 23:00:03 +0100 |
parents | d90138662f49 |
children | f2c8bc90f3c8 |
comparison
equal
deleted
inserted
replaced
18948:bb405ee57349 | 18949:5c405689da3e |
---|---|
2368 if (arg == NULL) | 2368 if (arg == NULL) |
2369 arg = (char_u *)""; | 2369 arg = (char_u *)""; |
2370 | 2370 |
2371 if (STRCMP(cmd, "ex") == 0) | 2371 if (STRCMP(cmd, "ex") == 0) |
2372 { | 2372 { |
2373 int save_called_emsg = called_emsg; | 2373 int called_emsg_before = called_emsg; |
2374 | 2374 |
2375 called_emsg = FALSE; | |
2376 ch_log(channel, "Executing ex command '%s'", (char *)arg); | 2375 ch_log(channel, "Executing ex command '%s'", (char *)arg); |
2377 ++emsg_silent; | 2376 ++emsg_silent; |
2378 do_cmdline_cmd(arg); | 2377 do_cmdline_cmd(arg); |
2379 --emsg_silent; | 2378 --emsg_silent; |
2380 if (called_emsg) | 2379 if (called_emsg > called_emsg_before) |
2381 ch_log(channel, "Ex command error: '%s'", | 2380 ch_log(channel, "Ex command error: '%s'", |
2382 (char *)get_vim_var_str(VV_ERRMSG)); | 2381 (char *)get_vim_var_str(VV_ERRMSG)); |
2383 called_emsg = save_called_emsg; | |
2384 } | 2382 } |
2385 else if (STRCMP(cmd, "normal") == 0) | 2383 else if (STRCMP(cmd, "normal") == 0) |
2386 { | 2384 { |
2387 exarg_T ea; | 2385 exarg_T ea; |
2388 | 2386 |