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