mirror of
https://github.com/vim/vim.git
synced 2025-09-30 04:44:14 -04:00
patch 8.0.0253: error when loading session if winminheight is 2
Problem: When creating a session when winminheight is 2 or larger and loading that session gives an error. Solution: Also set winminheight before setting winheight to 1. (Rafael Bodill, neovim #5717)
This commit is contained in:
@@ -11197,8 +11197,10 @@ makeopens(
|
|||||||
* resized when moving between windows.
|
* resized when moving between windows.
|
||||||
* Do this before restoring the view, so that the topline and the
|
* Do this before restoring the view, so that the topline and the
|
||||||
* cursor can be set. This is done again below.
|
* cursor can be set. This is done again below.
|
||||||
|
* winminheight and winminwidth need to be set to avoid an error if the
|
||||||
|
* user has set winheight or winwidth.
|
||||||
*/
|
*/
|
||||||
if (put_line(fd, "set winheight=1 winwidth=1") == FAIL)
|
if (put_line(fd, "set winminheight=1 winheight=1 winminwidth=1 winwidth=1") == FAIL)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
if (nr > 1 && ses_winsizes(fd, restore_size, tab_firstwin) == FAIL)
|
if (nr > 1 && ses_winsizes(fd, restore_size, tab_firstwin) == FAIL)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
@@ -11268,6 +11270,10 @@ makeopens(
|
|||||||
if (fprintf(fd, "set winheight=%ld winwidth=%ld shortmess=%s",
|
if (fprintf(fd, "set winheight=%ld winwidth=%ld shortmess=%s",
|
||||||
p_wh, p_wiw, p_shm) < 0 || put_eol(fd) == FAIL)
|
p_wh, p_wiw, p_shm) < 0 || put_eol(fd) == FAIL)
|
||||||
return FAIL;
|
return FAIL;
|
||||||
|
/* Re-apply 'winminheight' and 'winminwidth'. */
|
||||||
|
if (fprintf(fd, "set winminheight=%ld winminwidth=%ld",
|
||||||
|
p_wmh, p_wmw) < 0 || put_eol(fd) == FAIL)
|
||||||
|
return FAIL;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Lastly, execute the x.vim file if it exists.
|
* Lastly, execute the x.vim file if it exists.
|
||||||
|
@@ -101,4 +101,13 @@ func Test_mksession()
|
|||||||
let &wrap = wrap_save
|
let &wrap = wrap_save
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_mksession_winheight()
|
||||||
|
new
|
||||||
|
set winheight=10 winminheight=2
|
||||||
|
mksession! test_mks.out
|
||||||
|
source test_mks.out
|
||||||
|
|
||||||
|
" call delete('test_mks.out')
|
||||||
|
endfunc
|
||||||
|
|
||||||
" vim: shiftwidth=2 sts=2 expandtab
|
" vim: shiftwidth=2 sts=2 expandtab
|
||||||
|
@@ -764,6 +764,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
253,
|
||||||
/**/
|
/**/
|
||||||
252,
|
252,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user