diff options
| author | ckelsel <ckelsel@hotmail.com> | 2018-06-16 19:39:19 +0800 |
|---|---|---|
| committer | ckelsel <ckelsel@hotmail.com> | 2018-06-16 19:39:40 +0800 |
| commit | ebc7f69d928420f8957188aea64cd57f8ed30334 (patch) | |
| tree | c092042748df724525fba50131a1f0cc177bd6c8 /src/nvim/testdir | |
| parent | eeeaf04c5ecd4471c8a01c87d935e2c0e563272e (diff) | |
| download | rneovim-ebc7f69d928420f8957188aea64cd57f8ed30334.tar.gz rneovim-ebc7f69d928420f8957188aea64cd57f8ed30334.tar.bz2 rneovim-ebc7f69d928420f8957188aea64cd57f8ed30334.zip | |
vim-patch:8.0.0530: buffer overflow when 'columns' is very big
Problem: Buffer overflow when 'columns' is very big. (Nikolai Pavlov)
Solution: Correctly compute where to truncate. Fix translation.
(closes vim/vim#1600)
https://github.com/vim/vim/commit/658a3a2caf5852d071b6b1be92d9d6614a6208dc
Diffstat (limited to 'src/nvim/testdir')
| -rw-r--r-- | src/nvim/testdir/test_edit.vim | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_edit.vim b/src/nvim/testdir/test_edit.vim index 8f815478c2..ae0404ea6c 100644 --- a/src/nvim/testdir/test_edit.vim +++ b/src/nvim/testdir/test_edit.vim @@ -1323,3 +1323,23 @@ func Test_edit_quit() only endfunc +func Test_edit_complete_very_long_name() + let save_columns = &columns + set columns=5000 + call assert_equal(5000, &columns) + set noswapfile + let dirname = getcwd() . "/Xdir" + let longdirname = dirname . repeat('/' . repeat('d', 255), 4) + let longfilename = longdirname . '/' . repeat('a', 255) + call mkdir(longdirname, 'p') + call writefile(['Totum', 'Table'], longfilename) + new + exe "next Xfile " . longfilename + exe "normal iT\<C-N>" + + bwipe! + exe 'bwipe! ' . longfilename + call delete(dirname, 'rf') + let &columns = save_columns + set swapfile& +endfunc |