1
0
forked from aniani/vim

patch 8.2.1465: Vim9: subscript not handled properly

Problem:    Vim9: subscript not handled properly.
Solution:   Adjust error message.  Remove dead code.  Disallow string to
            number conversion in scripts.
This commit is contained in:
Bram Moolenaar
2020-08-16 14:48:19 +02:00
parent 829ac868b7
commit 56acb0943e
9 changed files with 71 additions and 67 deletions

View File

@@ -1909,7 +1909,10 @@ filter_map_one(typval_T *tv, typval_T *expr, int map, int *remp)
int error = FALSE;
// filter(): when expr is zero remove the item
*remp = (tv_get_number_chk(&rettv, &error) == 0);
if (in_vim9script())
*remp = !tv2bool(&rettv);
else
*remp = (tv_get_number_chk(&rettv, &error) == 0);
clear_tv(&rettv);
// On type error, nothing has been removed; return FAIL to stop the
// loop. The error message was given by tv_get_number_chk().