aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-04-12 23:51:43 +0800
committerGitHub <noreply@github.com>2023-04-12 23:51:43 +0800
commit23e9d625cf97715abce2c0dead416d8dcd9e6519 (patch)
tree9903ba14520313bf4626291fa9719bc2b37825a2 /src
parentcdc028e97d9808c21e26fffe2d282b6517eaffc0 (diff)
downloadrneovim-23e9d625cf97715abce2c0dead416d8dcd9e6519.tar.gz
rneovim-23e9d625cf97715abce2c0dead416d8dcd9e6519.tar.bz2
rneovim-23e9d625cf97715abce2c0dead416d8dcd9e6519.zip
vim-patch:9.0.1444: crash when passing NULL to setcmdline() (#23048)
Problem: Crash when passing NULL to setcmdline(). (Andreas Louv) Solution: Use tv_get_string() instead of using v_string directly. (closes vim/vim#12231, closes vim/vim#12227) https://github.com/vim/vim/commit/ac6cd31afcbdd08bfa92ca33f7d4ce5773ba4353
Diffstat (limited to 'src')
-rw-r--r--src/nvim/ex_getln.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c
index ba403e3dd9..f3afbdcaaf 100644
--- a/src/nvim/ex_getln.c
+++ b/src/nvim/ex_getln.c
@@ -4209,7 +4209,8 @@ void f_setcmdline(typval_T *argvars, typval_T *rettv, EvalFuncData fptr)
}
}
- rettv->vval.v_number = set_cmdline_str(argvars[0].vval.v_string, pos);
+ // Use tv_get_string() to handle a NULL string like an empty string.
+ rettv->vval.v_number = set_cmdline_str(tv_get_string(&argvars[0]), pos);
}
/// "setcmdpos()" function