summaryrefslogtreecommitdiffstats
path: root/src/testdir/test_edit.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-03-31 22:27:12 +0200
committerBram Moolenaar <Bram@vim.org>2017-03-31 22:27:12 +0200
commit658a3a2caf5852d071b6b1be92d9d6614a6208dc (patch)
treec78aa94abed7966b0b6c69fe2b56d720e6d91666 /src/testdir/test_edit.vim
parent13489b9c41922b9ecb16fa47564ec76641515c08 (diff)
patch 8.0.0530: buffer overflow when 'columns' is very bigv8.0.0530
Problem: Buffer overflow when 'columns' is very big. (Nikolai Pavlov) Solution: Correctly compute where to truncate. Fix translation. (closes #1600)
Diffstat (limited to 'src/testdir/test_edit.vim')
-rw-r--r--src/testdir/test_edit.vim21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/testdir/test_edit.vim b/src/testdir/test_edit.vim
index 344c12664c..b43f84ba2f 100644
--- a/src/testdir/test_edit.vim
+++ b/src/testdir/test_edit.vim
@@ -1322,3 +1322,24 @@ func! Test_edit_rightleft()
set norightleft
bw!
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