Mercurial > vim
diff src/testdir/test_put.vim @ 10688:3d1872fbecc4 v8.0.0234
patch 8.0.0234: crash when using put in Visual mode
commit https://github.com/vim/vim/commit/941c12da3c087fd04aa6c120a76bf28f19349d96
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 24 19:55:43 2017 +0100
patch 8.0.0234: crash when using put in Visual mode
Problem: When several lines are visually selected and one of them is short,
using put may cause a crash. (Axel Bender)
Solution: Check for a short line. (Christian Brabandt)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 24 Jan 2017 20:00:04 +0100 |
parents | bce3eccea39a |
children | 72b20190dce6 |
line wrap: on
line diff
--- a/src/testdir/test_put.vim +++ b/src/testdir/test_put.vim @@ -21,3 +21,16 @@ func Test_put_char_block() call assert_equal(['Xfile_put 1', 'Xfile_put 2'], getline(1,2)) bw! endfunc + +func Test_put_char_block2() + new + let a = [ getreg('a'), getregtype('a') ] + call setreg('a', ' one ', 'v') + call setline(1, ['Line 1', '', 'Line 3', '']) + " visually select the first 3 lines and put register a over it + exe "norm! ggl\<c-v>2j2l\"ap" + call assert_equal(['L one 1', '', 'L one 3', ''], getline(1,4)) + " clean up + bw! + call setreg('a', a[0], a[1]) +endfunc