aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval/userfunc.c
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2022-11-07 11:04:33 +0800
committerzeertzjq <zeertzjq@outlook.com>2022-11-07 14:25:32 +0800
commitd7bd7f13a8f026b8b95fdc49b4754f6199105891 (patch)
tree1fb13c11d6da35dc73af1936f9f15b91375c409a /src/nvim/eval/userfunc.c
parent42e44d6d334bda8b97afe9e34a819ab293e5e10a (diff)
downloadrneovim-d7bd7f13a8f026b8b95fdc49b4754f6199105891.tar.gz
rneovim-d7bd7f13a8f026b8b95fdc49b4754f6199105891.tar.bz2
rneovim-d7bd7f13a8f026b8b95fdc49b4754f6199105891.zip
vim-patch:8.2.3756: might crash when callback is not valid
Problem: might crash when callback is not valid. Solution: Check for valid callback. (Yegappan Lakshmanan, closes vim/vim#9293) https://github.com/vim/vim/commit/4dc24eb5adbcc76838fae1e900936dd230209d96 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Diffstat (limited to 'src/nvim/eval/userfunc.c')
-rw-r--r--src/nvim/eval/userfunc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/nvim/eval/userfunc.c b/src/nvim/eval/userfunc.c
index d07cfe0bd9..cc21bf56ca 100644
--- a/src/nvim/eval/userfunc.c
+++ b/src/nvim/eval/userfunc.c
@@ -1394,7 +1394,7 @@ func_call_skip_call:
}
/// call the 'callback' function and return the result as a number.
-/// Returns -1 when calling the function fails. Uses argv[0] to argv[argc - 1]
+/// Returns -2 when calling the function fails. Uses argv[0] to argv[argc - 1]
/// for the function arguments. argv[argc] should have type VAR_UNKNOWN.
///
/// @param argcount number of "argvars"
@@ -1403,7 +1403,7 @@ varnumber_T callback_call_retnr(Callback *callback, int argcount, typval_T *argv
{
typval_T rettv;
if (!callback_call(callback, argcount, argvars, &rettv)) {
- return -1;
+ return -2;
}
varnumber_T retval = tv_get_number_chk(&rettv, NULL);