diff src/testdir/test_quotestar.vim @ 11709:c3227699ad4d v8.0.0737

patch 8.0.0737: crash when X11 selection is very big commit https://github.com/vim/vim/commit/cdb7e1b7f9e18a7b165ff09103a9994f84966123 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Jul 19 19:55:58 2017 +0200 patch 8.0.0737: crash when X11 selection is very big Problem: Crash when X11 selection is very big. Solution: Use static items instead of allocating them. Add callbacks. (Ozaki Kiichi)
author Christian Brabandt <cb@256bit.org>
date Wed, 19 Jul 2017 20:00:03 +0200
parents 370e833dcd4d
children c1347c968d31
line wrap: on
line diff
--- 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 @* = ''