Mercurial > vim
changeset 14848:45d8aa272dbe v8.1.0436
patch 8.1.0436: can get the text of inputsecret() with getcmdline()
commit https://github.com/vim/vim/commit/ee91c33570008aefd2d62b8f88b22db751acacbe
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Sep 25 22:27:35 2018 +0200
patch 8.1.0436: can get the text of inputsecret() with getcmdline()
Problem: Can get the text of inputsecret() with getcmdline(). (Tommy Allen)
Solution: Don't return the text.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 25 Sep 2018 22:30:06 +0200 |
parents | 8e190720301d |
children | c2d0417c7f19 |
files | src/ex_getln.c src/version.c |
diffstat | 2 files changed, 10 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -1310,7 +1310,7 @@ getcmdline( if (c != Ctrl_N && c != Ctrl_G && (c != 'e' || (ccline.cmdfirstc == '=' && KeyTyped) #ifdef FEAT_EVAL - || cmdline_star + || cmdline_star > 0 #endif )) { @@ -1805,8 +1805,8 @@ getcmdline( new_cmdpos = -1; if (c == '=') { - if (ccline.cmdfirstc == '=' // can't do this recursively - || cmdline_star) // or when typing a password + if (ccline.cmdfirstc == '=' // can't do this recursively + || cmdline_star > 0) // or when typing a password { beep_flush(); c = ESC; @@ -6506,8 +6506,11 @@ get_ccline_ptr(void) char_u * get_cmdline_str(void) { - struct cmdline_info *p = get_ccline_ptr(); - + struct cmdline_info *p; + + if (cmdline_star > 0) + return NULL; + p = get_ccline_ptr(); if (p == NULL) return NULL; return vim_strnsave(p->cmdbuff, p->cmdlen);