Mercurial > vim
comparison src/ex_getln.c @ 14842:7379bc1c3498 v8.1.0433
patch 8.1.0433: mapping can obtain text from inputsecret()
commit https://github.com/vim/vim/commit/31cbadf74bccc2a5cd8233bc31bbcfe466b00021
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Sep 25 20:48:57 2018 +0200
patch 8.1.0433: mapping can obtain text from inputsecret()
Problem: Mapping can obtain text from inputsecret(). (Tommy Allen)
Solution: Disallow CTRL-R = and CTRL-\ e when using inputsecret().
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 25 Sep 2018 21:00:06 +0200 |
parents | 5e5f2d824189 |
children | 45d8aa272dbe |
comparison
equal
deleted
inserted
replaced
14841:b58eb884380f | 14842:7379bc1c3498 |
---|---|
1306 --no_mapping; | 1306 --no_mapping; |
1307 --allow_keys; | 1307 --allow_keys; |
1308 /* CTRL-\ e doesn't work when obtaining an expression, unless it | 1308 /* CTRL-\ e doesn't work when obtaining an expression, unless it |
1309 * is in a mapping. */ | 1309 * is in a mapping. */ |
1310 if (c != Ctrl_N && c != Ctrl_G && (c != 'e' | 1310 if (c != Ctrl_N && c != Ctrl_G && (c != 'e' |
1311 || (ccline.cmdfirstc == '=' && KeyTyped))) | 1311 || (ccline.cmdfirstc == '=' && KeyTyped) |
1312 #ifdef FEAT_EVAL | |
1313 || cmdline_star | |
1314 #endif | |
1315 )) | |
1312 { | 1316 { |
1313 vungetc(c); | 1317 vungetc(c); |
1314 c = Ctrl_BSL; | 1318 c = Ctrl_BSL; |
1315 } | 1319 } |
1316 #ifdef FEAT_EVAL | 1320 #ifdef FEAT_EVAL |
1799 * a new one... | 1803 * a new one... |
1800 */ | 1804 */ |
1801 new_cmdpos = -1; | 1805 new_cmdpos = -1; |
1802 if (c == '=') | 1806 if (c == '=') |
1803 { | 1807 { |
1804 if (ccline.cmdfirstc == '=')/* can't do this recursively */ | 1808 if (ccline.cmdfirstc == '=' // can't do this recursively |
1809 || cmdline_star) // or when typing a password | |
1805 { | 1810 { |
1806 beep_flush(); | 1811 beep_flush(); |
1807 c = ESC; | 1812 c = ESC; |
1808 } | 1813 } |
1809 else | 1814 else |