1
0
forked from aniani/vim

patch 7.4.2212

Problem:    Mark " is not set when closing a window in another tab. (Guraga)
Solution:   Check all tabs for the window to be valid. (based on patch by
            Hirohito Higashi, closes #974)
This commit is contained in:
Bram Moolenaar
2016-08-14 19:08:45 +02:00
parent e56132bb41
commit e59215c7dc
5 changed files with 58 additions and 3 deletions

View File

@@ -1358,7 +1358,7 @@ win_init_some(win_T *newp, win_T *oldp)
#if defined(FEAT_WINDOWS) || defined(PROTO)
/*
* Check if "win" is a pointer to an existing window.
* Check if "win" is a pointer to an existing window in the current tab page.
*/
int
win_valid(win_T *win)
@@ -1373,6 +1373,28 @@ win_valid(win_T *win)
return FALSE;
}
/*
* Check if "win" is a pointer to an existing window in any tab page.
*/
int
win_valid_any_tab(win_T *win)
{
win_T *wp;
tabpage_T *tp;
if (win == NULL)
return FALSE;
FOR_ALL_TABPAGES(tp)
{
FOR_ALL_WINDOWS_IN_TAB(tp, wp)
{
if (wp == win)
return TRUE;
}
}
return FALSE;
}
/*
* Return the number of windows.
*/