aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2018-09-26 08:13:21 +0200
committerGitHub <noreply@github.com>2018-09-26 08:13:21 +0200
commitfc18fad74ff3be9929d9d10de964f4813497fba0 (patch)
treebad9061f50ad39c11eecefd1df34db155e8b9558 /src
parent8240b8b596da48215d0e6032e587cd6242e6f014 (diff)
parentc6350e415077b877937753edef038fde10caa4f4 (diff)
downloadrneovim-fc18fad74ff3be9929d9d10de964f4813497fba0.tar.gz
rneovim-fc18fad74ff3be9929d9d10de964f4813497fba0.tar.bz2
rneovim-fc18fad74ff3be9929d9d10de964f4813497fba0.zip
Merge #9053 from janlazo/vim-8.1.0433
Diffstat (limited to 'src')
-rw-r--r--src/nvim/ex_getln.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
index 9be61f0740..4d6720ef23 100644
--- a/src/nvim/ex_getln.c
+++ b/src/nvim/ex_getln.c
@@ -793,9 +793,11 @@ static int command_line_execute(VimState *state, int key)
no_mapping--;
// CTRL-\ e doesn't work when obtaining an expression, unless it
// is in a mapping.
- if (s->c != Ctrl_N && s->c != Ctrl_G && (s->c != 'e'
- || (ccline.cmdfirstc == '='
- && KeyTyped))) {
+ if (s->c != Ctrl_N
+ && s->c != Ctrl_G
+ && (s->c != 'e'
+ || (ccline.cmdfirstc == '=' && KeyTyped)
+ || cmdline_star > 0)) {
vungetc(s->c);
s->c = Ctrl_BSL;
} else if (s->c == 'e') {
@@ -1350,7 +1352,8 @@ static int command_line_handle_key(CommandLineState *s)
// a new one...
new_cmdpos = -1;
if (s->c == '=') {
- if (ccline.cmdfirstc == '=') { // can't do this recursively
+ if (ccline.cmdfirstc == '=' // can't do this recursively
+ || cmdline_star > 0) { // or when typing a password
beep_flush();
s->c = ESC;
} else {
@@ -5587,6 +5590,9 @@ static struct cmdline_info *get_ccline_ptr(void)
*/
char_u *get_cmdline_str(void)
{
+ if (cmdline_star > 0) {
+ return NULL;
+ }
struct cmdline_info *p = get_ccline_ptr();
if (p == NULL)