summaryrefslogtreecommitdiffstats
path: root/src/channel.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-03-27 21:23:30 +0100
committerBram Moolenaar <Bram@vim.org>2021-03-27 21:23:30 +0100
commitc580943965fc9b006ec233bdee4ea5380f5594ea (patch)
treef17d1e9bbebd06aac239d16dd6d16fc1ecfc88e1 /src/channel.c
parent7b45d46cf7db0d2d7a4defc2d81b233a2c672b74 (diff)
patch 8.2.2666: Vim9: not enough function arguments checked for stringv8.2.2666
Problem: Vim9: not enough function arguments checked for string. Solution: Check in ch_logfile(), char2nr() and others.
Diffstat (limited to 'src/channel.c')
-rw-r--r--src/channel.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/channel.c b/src/channel.c
index bdb59f0d39..fa329bdba3 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -4883,6 +4883,11 @@ f_ch_logfile(typval_T *argvars, typval_T *rettv UNUSED)
// Don't open a file in restricted mode.
if (check_restricted() || check_secure())
return;
+ if (in_vim9script()
+ && (check_for_string_arg(argvars, 0) == FAIL
+ || check_for_string_arg(argvars, 1) == FAIL))
+ return;
+
fname = tv_get_string(&argvars[0]);
if (argvars[1].v_type == VAR_STRING)
opt = tv_get_string_buf(&argvars[1], buf);