diff options
author | Bram Moolenaar <Bram@vim.org> | 2017-07-19 19:55:58 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2017-07-19 19:55:58 +0200 |
commit | cdb7e1b7f9e18a7b165ff09103a9994f84966123 (patch) | |
tree | 7c4cda3abde0d0b1b3d821c7fb825c99512c0dc7 /src/testdir/test_quotestar.vim | |
parent | 04f62f881c5743d2fdaf7324f6a715381f0d5fcf (diff) | |
download | vim-git-cdb7e1b7f9e18a7b165ff09103a9994f84966123.tar.gz |
patch 8.0.0737: crash when X11 selection is very bigv8.0.0737
Problem: Crash when X11 selection is very big.
Solution: Use static items instead of allocating them. Add callbacks.
(Ozaki Kiichi)
Diffstat (limited to 'src/testdir/test_quotestar.vim')
-rw-r--r-- | src/testdir/test_quotestar.vim | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/testdir/test_quotestar.vim b/src/testdir/test_quotestar.vim index b053260be..b7d31583d 100644 --- a/src/testdir/test_quotestar.vim +++ b/src/testdir/test_quotestar.vim @@ -88,6 +88,18 @@ func Do_test_quotestar_for_x11() call WaitFor('@* == "yes"') call assert_equal('yes', @*) + " Handle the large selection over 262040 byte. + let length = 262044 + let sample = 'a' . repeat('b', length - 2) . 'c' + let @* = sample + call WaitFor('remote_expr("' . name . '", "len(@*) >= ' . length . '", "", 1)', 3000) + let res = remote_expr(name, "@*", "", 2) + call assert_equal(length, len(res)) + " Check length to prevent a large amount of output at assertion failure. + if length == len(res) + call assert_equal(sample, res) + endif + if has('unix') && has('gui') && !has('gui_running') let @* = '' |