diff src/vim9type.c @ 31543:0c0ecf489f05 v9.0.1104

patch 9.0.1104: invalid memory access when checking function argument types Commit: https://github.com/vim/vim/commit/56310d38d8e866085108c7b77b756f4373d5122a Author: Bram Moolenaar <Bram@vim.org> Date: Tue Dec 27 17:25:05 2022 +0000 patch 9.0.1104: invalid memory access when checking function argument types Problem: Invalid memory access when checking function argument types. Solution: Do not check beyond the number of arguments. (closes https://github.com/vim/vim/issues/11755)
author Bram Moolenaar <Bram@vim.org>
date Tue, 27 Dec 2022 18:30:06 +0100
parents 9ae3720f9bd9
children 67d9fbe516a3
line wrap: on
line diff
--- a/src/vim9type.c
+++ b/src/vim9type.c
@@ -848,7 +848,7 @@ check_type_maybe(
 	    {
 		int i;
 
-		for (i = 0; i < expected->tt_argcount; ++i)
+		for (i = 0; i < expected->tt_argcount && i < actual->tt_argcount; ++i)
 		    // Allow for using "any" argument type, lambda's have them.
 		    if (actual->tt_args[i] != &t_any && check_type(
 			    expected->tt_args[i], actual->tt_args[i], FALSE,