Mercurial > vim
changeset 24014:e45b2e28e45e v8.2.2549
patch 8.2.2549: crash after using "g:" in a for loop
Commit: https://github.com/vim/vim/commit/1bd3cb201983859d86d644eef9e98cd3e9de7261
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Feb 24 12:27:31 2021 +0100
patch 8.2.2549: crash after using "g:" in a for loop
Problem: Crash after using "g:" in a for loop.
Solution: Increment the reference count. (closes https://github.com/vim/vim/issues/7892)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 24 Feb 2021 12:30:03 +0100 |
parents | a18e4d113a10 |
children | 4bce4a16cb66 |
files | src/testdir/test_vim9_expr.vim src/version.c src/vim9execute.c |
diffstat | 3 files changed, 9 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/testdir/test_vim9_expr.vim +++ b/src/testdir/test_vim9_expr.vim @@ -2545,6 +2545,12 @@ def Test_expr7_namespace() assert_equal('some', get(t:, 'some_var', 'xxx')) assert_equal('xxx', get(t:, 'no_var', 'xxx')) unlet t:some_var + + # check using g: in a for loop more than DO_NOT_FREE_CNT times + for i in range(100000) + if has_key(g:, 'does-not-exist') + endif + endfor enddef def Test_expr7_parens()