Mercurial > vim
comparison src/channel.c @ 8746:4c38a4733578 v7.4.1662
commit https://github.com/vim/vim/commit/c4dcd60c76666bf113719f929709ad6120eb6528
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 26 22:56:46 2016 +0100
patch 7.4.1662
Problem: No test for an invalid Ex command on a channel.
Solution: Test handling an invalid command gracefully. Avoid getting an
error message, do write it to the channel log.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 26 Mar 2016 23:00:05 +0100 |
parents | 6e567914f55a |
children | df91c8263f04 |
comparison
equal
deleted
inserted
replaced
8745:bafdb038f07a | 8746:4c38a4733578 |
---|---|
1659 if (arg == NULL) | 1659 if (arg == NULL) |
1660 arg = (char_u *)""; | 1660 arg = (char_u *)""; |
1661 | 1661 |
1662 if (STRCMP(cmd, "ex") == 0) | 1662 if (STRCMP(cmd, "ex") == 0) |
1663 { | 1663 { |
1664 int save_called_emsg = called_emsg; | |
1665 | |
1666 called_emsg = FALSE; | |
1664 ch_logs(channel, "Executing ex command '%s'", (char *)arg); | 1667 ch_logs(channel, "Executing ex command '%s'", (char *)arg); |
1668 ++emsg_silent; | |
1665 do_cmdline_cmd(arg); | 1669 do_cmdline_cmd(arg); |
1670 --emsg_silent; | |
1671 if (called_emsg) | |
1672 ch_logs(channel, "Ex command error: '%s'", | |
1673 (char *)get_vim_var_str(VV_ERRMSG)); | |
1674 called_emsg = save_called_emsg; | |
1666 } | 1675 } |
1667 else if (STRCMP(cmd, "normal") == 0) | 1676 else if (STRCMP(cmd, "normal") == 0) |
1668 { | 1677 { |
1669 exarg_T ea; | 1678 exarg_T ea; |
1670 | 1679 |