mirror of
https://github.com/vim/vim.git
synced 2025-09-28 04:24:06 -04:00
patch 7.4.2262
Problem: Fail to read register content from viminfo if it is 438 characters long. (John Chen) Solution: Adjust the check for line wrapping. (closes #1010)
This commit is contained in:
@@ -2526,7 +2526,7 @@ barline_writestring(FILE *fd, char_u *s, int remaining_start)
|
||||
else
|
||||
++len;
|
||||
}
|
||||
if (len > remaining)
|
||||
if (len > remaining - 2)
|
||||
{
|
||||
fprintf(fd, ">%d\n|<", len);
|
||||
remaining = LSIZE - 20;
|
||||
|
@@ -214,6 +214,19 @@ func Test_viminfo_registers()
|
||||
call assert_equal(l, getreg('d', 1, 1))
|
||||
call assert_equal("V", getregtype('d'))
|
||||
|
||||
" Length around 440 switches to line continuation.
|
||||
let len = 434
|
||||
while len < 445
|
||||
let s = repeat('a', len)
|
||||
call setreg('"', s)
|
||||
wviminfo Xviminfo
|
||||
call setreg('"', '')
|
||||
rviminfo Xviminfo
|
||||
call assert_equal(s, getreg('"'), 'wrong register at length: ' . len)
|
||||
|
||||
let len += 1
|
||||
endwhile
|
||||
|
||||
call delete('Xviminfo')
|
||||
endfunc
|
||||
|
||||
|
@@ -763,6 +763,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
2262,
|
||||
/**/
|
||||
2261,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user