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)
diff --git a/src/window.c b/src/window.c
index c6409e1..b015d1d 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1358,7 +1358,7 @@
#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)
@@ -1374,6 +1374,28 @@
}
/*
+ * 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.
*/
int