Mercurial > vim
diff src/list.c @ 21831:d8422de73113 v8.2.1465
patch 8.2.1465: Vim9: subscript not handled properly
Commit: https://github.com/vim/vim/commit/56acb0943ede35cd9d2f6667cde2442819ccbf59
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Aug 16 14:48:19 2020 +0200
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.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 16 Aug 2020 15:00:05 +0200 |
parents | af5db9b6d210 |
children | e3f9528bddda |
line wrap: on
line diff
--- a/src/list.c +++ b/src/list.c @@ -1909,7 +1909,10 @@ filter_map_one(typval_T *tv, typval_T *e 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().