From 67827edeef5ce3718c40c83ccca07dd1854a0f16 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Mon, 5 Jun 2023 06:58:14 +0800 Subject: vim-patch:9.0.1606: using freed memory when 'foldcolumn' is set (#23906) Problem: Using freed memory when 'foldcolumn' is set. Solution: Save extra pointer to free it later. (closes vim/vim#12492) https://github.com/vim/vim/commit/58e1e010454113a7c8a9b0327c54d2ee7d73d2fd --- test/old/testdir/test_fold.vim | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'test') diff --git a/test/old/testdir/test_fold.vim b/test/old/testdir/test_fold.vim index 2f5c93ca2d..ccd1bfecf8 100644 --- a/test/old/testdir/test_fold.vim +++ b/test/old/testdir/test_fold.vim @@ -1555,4 +1555,18 @@ func Test_fold_screenrow_motion() call assert_equal(1, line('.')) endfunc +" This was using freed memory +func Test_foldcolumn_linebreak_control_char() + CheckFeature linebreak + + 5vnew + setlocal foldcolumn=1 linebreak + call setline(1, "aaa\b") + redraw + call assert_equal([' aaa^', ' Ab '], ScreenLines([1, 2], 5)) + call assert_equal(screenattr(1, 5), screenattr(2, 2)) + + bwipe! +endfunc + " vim: shiftwidth=2 sts=2 expandtab -- cgit