vim-patch:8.1.0011: maparg() and mapcheck() confuse empty and non-existing (#8976)

Problem:    maparg() and mapcheck() confuse empty and non-existing.
Solution:   Return <Nop> for an existing non-empty mapping. (closes vim/vim#2940)
f88a5bc102
This commit is contained in:
Jan Edmund Lazo
2018-09-10 03:27:04 -04:00
committed by Justin M. Keyes
parent d9fcd43638
commit 207cfce3de
2 changed files with 12 additions and 4 deletions

View File

@@ -12145,8 +12145,12 @@ static void get_maparg(typval_T *argvars, typval_T *rettv, int exact)
if (!get_dict) {
// Return a string.
if (rhs != NULL) {
rettv->vval.v_string = (char_u *)str2special_save(
(const char *)rhs, false, false);
if (*rhs == NUL) {
rettv->vval.v_string = vim_strsave((char_u *)"<Nop>");
} else {
rettv->vval.v_string = (char_u *)str2special_save(
(char *)rhs, false, false);
}
}
} else {