Mercurial > vim
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,