From 254454d0c5a92acaa2c7d199236c216a9de8b6ee Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sun, 12 Jun 2022 19:06:30 +0800 Subject: vim-patch:8.2.5079: DirChanged autocommand may use freed memory Problem: DirChanged autocommand may use freed memory. (Shane-XB Qian) Solution: Free the memory later. (closes vim/vim#10555) https://github.com/vim/vim/commit/d8c9d32c8932e93008bfd4e8828ed42f4e9f8315 Code change is N/A as Nvim gets the full current directory again before applying the autocommand, so this just ports the tests. --- src/nvim/testdir/test_autocmd.vim | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/nvim/testdir/test_autocmd.vim b/src/nvim/testdir/test_autocmd.vim index 13be82a71d..9d4568b196 100644 --- a/src/nvim/testdir/test_autocmd.vim +++ b/src/nvim/testdir/test_autocmd.vim @@ -1981,6 +1981,13 @@ function Test_dirchanged_global() call assert_equal(expected, s:li) exe 'lcd ' .. fnameescape(s:dir_bar) call assert_equal(expected, s:li) + + exe 'cd ' .. s:dir_foo + exe 'cd ' .. s:dir_bar + autocmd! test_dirchanged DirChanged global let g:result = expand("") + cd - + call assert_equal(s:dir_foo, g:result) + call s:After_test_dirchanged() endfunc -- cgit