patch 8.2.1997: window changes when using bufload() while in a terminal popup
Problem: Window changes when using bufload() while in a terminal popup.
Solution: When searching for a window by ID also find a popup window.
(closes #7307)
diff --git a/src/window.c b/src/window.c
index 501ea84..1134d0a6 100644
--- a/src/window.c
+++ b/src/window.c
@@ -1462,6 +1462,7 @@
/*
* Find window "id" in the current tab page.
+ * Also find popup windows.
* Return NULL if not found.
*/
win_T *
@@ -1472,6 +1473,14 @@
FOR_ALL_WINDOWS(wp)
if (wp->w_id == id)
return wp;
+#ifdef FEAT_PROP_POPUP
+ FOR_ALL_POPUPWINS(wp)
+ if (wp->w_id == id)
+ return wp;
+ FOR_ALL_POPUPWINS_IN_TAB(curtab, wp)
+ if (wp->w_id == id)
+ return wp;
+#endif
return NULL;
}