1
0
forked from aniani/vim

patch 8.0.1160: getting tab-local variable fails after closing window

Problem:    Getting tab-local variable fails after closing window.
Solution:   set tp_firstwin and tp_lastwin. (Jason Franklin, closes #2170)
This commit is contained in:
Bram Moolenaar
2017-09-29 21:29:18 +02:00
parent d371bbe0ab
commit 816968defc
4 changed files with 28 additions and 9 deletions

View File

@@ -4775,13 +4775,14 @@ win_remove(
if (wp->w_prev != NULL)
wp->w_prev->w_next = wp->w_next;
else if (tp == NULL)
firstwin = wp->w_next;
firstwin = curtab->tp_firstwin = wp->w_next;
else
tp->tp_firstwin = wp->w_next;
if (wp->w_next != NULL)
wp->w_next->w_prev = wp->w_prev;
else if (tp == NULL)
lastwin = wp->w_prev;
lastwin = curtab->tp_lastwin = wp->w_prev;
else
tp->tp_lastwin = wp->w_prev;
}
@@ -6597,11 +6598,11 @@ restore_snapshot_rec(frame_T *sn, frame_T *fr)
*/
int
switch_win(
win_T **save_curwin UNUSED,
tabpage_T **save_curtab UNUSED,
win_T *win UNUSED,
tabpage_T *tp UNUSED,
int no_display UNUSED)
win_T **save_curwin,
tabpage_T **save_curtab,
win_T *win,
tabpage_T *tp,
int no_display)
{
# ifdef FEAT_AUTOCMD
block_autocmds();