Patch 9.0.0011
Problem: Reading beyond the end of the line with put command.
Solution: Adjust the end mark position.
Files: src/register.c, src/testdir/test_put.vim
*** ../vim-9.0.0010/src/register.c 2022-05-27 17:18:23.000000000 +0100
--- src/register.c 2022-06-30 12:28:59.811701662 +0100
***************
*** 1918,1923 ****
--- 1918,1925 ----
vim_memset(ptr, ' ', (size_t)spaces);
ptr += spaces;
}
+ else
+ totlen -= spaces; // didn't use these spaces
}
// may insert some spaces after the new text
*** ../vim-9.0.0010/src/testdir/test_put.vim 2022-05-25 15:12:33.000000000 +0100
--- src/testdir/test_put.vim 2022-06-30 12:28:49.739731945 +0100
***************
*** 219,223 ****
--- 219,235 ----
bwipe!
endfunc
+ " this was putting the end mark after the end of the line
+ func Test_put_visual_mode()
+ edit! SomeNewBuffer
+ set selection=exclusive
+ exe "norm o\t"
+ m0
+ sil! norm
p
p
+
+ bwipe!
+ set selection&
+ endfunc
+
" vim: shiftwidth=2 sts=2 expandtab
*** ../vim-9.0.0010/src/version.c 2022-06-30 11:03:36.048634818 +0100
--- src/version.c 2022-06-30 12:16:30.883037595 +0100
***************
*** 737,738 ****
--- 737,740 ----
{ /* Add new patch number below this line */
+ /**/
+ 11,
/**/
--
I am also told that there is a logical proof out there somewhere
that demonstrates that there is no task which duct tape cannot handle.
-- Paul Brannan
/// Bram Moolenaar -- Br...@Moolenaar.net --
http://www.Moolenaar.net \\\
/// \\\
\\\ sponsor Vim, vote for features --
http://www.Vim.org/sponsor/ ///
\\\ help me help AIDS victims --
http://ICCF-Holland.org ///