summaryrefslogtreecommitdiff
path: root/src/evalfunc.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-06-06 14:14:39 +0200
committerBram Moolenaar <Bram@vim.org>2021-06-06 14:14:39 +0200
commit3cfa5b16b06bcc034f6de77070fa779d698ab5e9 (patch)
tree1791529efb117bb1e68814a35dbe9f6d5a8bca0f /src/evalfunc.c
parent7a2217bedd223df4c8bbebe731bf0b5fe8532533 (diff)
downloadvim-git-3cfa5b16b06bcc034f6de77070fa779d698ab5e9.tar.gz
patch 8.2.2949: tests failing because no error for float to string conversionv8.2.2949
Problem: Tests failing because there is no error for float to string conversion. Solution: Change the check for failure to check for correct result. Make some conversions strict in Vim9 script.
Diffstat (limited to 'src/evalfunc.c')
-rw-r--r--src/evalfunc.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 1962ccd15..07f158d6d 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -3000,7 +3000,8 @@ execute_common(typval_T *argvars, typval_T *rettv, int arg_off)
if (argvars[arg_off + 1].v_type != VAR_UNKNOWN)
{
char_u buf[NUMBUFLEN];
- char_u *s = tv_get_string_buf_chk(&argvars[arg_off + 1], buf);
+ char_u *s = tv_get_string_buf_chk_strict(&argvars[arg_off + 1], buf,
+ in_vim9script());
if (s == NULL)
return;
@@ -8897,7 +8898,7 @@ f_strdisplaywidth(typval_T *argvars, typval_T *rettv)
static void
f_strwidth(typval_T *argvars, typval_T *rettv)
{
- char_u *s = tv_get_string(&argvars[0]);
+ char_u *s = tv_get_string_strict(&argvars[0]);
rettv->vval.v_number = (varnumber_T)(mb_string2cells(s, -1));
}