From: Bram Moolenaar Date: Mon, 29 Nov 2021 10:36:19 +0000 (+0000) Subject: patch 8.2.3693: Coverity warns for possibly using a NULL pointer X-Git-Tag: v8.2.3693 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=293eb9ba4669b1500370502397d399681e7098f0;p=vim patch 8.2.3693: Coverity warns for possibly using a NULL pointer Problem: Coverity warns for possibly using a NULL pointer. Solution: Check for NULL and give an error. --- diff --git a/src/errors.h b/src/errors.h index 3c76bb70d..5cc98e786 100644 --- a/src/errors.h +++ b/src/errors.h @@ -355,7 +355,8 @@ EXTERN char e_cannot_delete_vim9_script_function_str[] INIT(= N_("E1084: Cannot delete Vim9 script function %s")); EXTERN char e_not_callable_type_str[] INIT(= N_("E1085: Not a callable type: %s")); -// E1086 unused +EXTERN char e_function_reference_invalid[] + INIT(= N_("E1086: Function reference invalid")); EXTERN char e_cannot_use_index_when_declaring_variable[] INIT(= N_("E1087: Cannot use an index when declaring a variable")); // E1088 unused diff --git a/src/version.c b/src/version.c index 90021bec3..b7fe97b2b 100644 --- a/src/version.c +++ b/src/version.c @@ -757,6 +757,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 3693, /**/ 3692, /**/ diff --git a/src/vim9execute.c b/src/vim9execute.c index 7704635e9..de4de16e3 100644 --- a/src/vim9execute.c +++ b/src/vim9execute.c @@ -3189,6 +3189,12 @@ exec_instructions(ectx_T *ectx) { ufunc = find_func(funcref->fr_func_name, FALSE, NULL); } + if (ufunc == NULL) + { + SOURCING_LNUM = iptr->isn_lnum; + emsg(_(e_function_reference_invalid)); + goto theend; + } if (fill_partial_and_closure(pt, ufunc, ectx) == FAIL) goto theend; tv = STACK_TV_BOT(0);