aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/window.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <janedmundlazo@hotmail.com>2018-07-14 11:20:59 -0400
committerJan Edmund Lazo <janedmundlazo@hotmail.com>2018-08-06 21:56:38 -0400
commit059986e03827c24e2fa1ac2a3b66743dfed9a8d9 (patch)
tree5ce912423f7fbe4f666d78630c7ee412e50bd683 /src/nvim/window.c
parentd6711685747681e006f996893e85c998d192b2eb (diff)
downloadrneovim-059986e03827c24e2fa1ac2a3b66743dfed9a8d9.tar.gz
rneovim-059986e03827c24e2fa1ac2a3b66743dfed9a8d9.tar.bz2
rneovim-059986e03827c24e2fa1ac2a3b66743dfed9a8d9.zip
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 vim/vim#2170) https://github.com/vim/vim/commit/816968defc8ae79eb7e2319e991e74661be8d750
Diffstat (limited to 'src/nvim/window.c')
-rw-r--r--src/nvim/window.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/src/nvim/window.c b/src/nvim/window.c
index 7582c837c8..300514f424 100644
--- a/src/nvim/window.c
+++ b/src/nvim/window.c
@@ -3970,18 +3970,20 @@ win_remove (
tabpage_T *tp /* tab page "win" is in, NULL for current */
)
{
- if (wp->w_prev != NULL)
+ if (wp->w_prev != NULL) {
wp->w_prev->w_next = wp->w_next;
- else if (tp == NULL)
- firstwin = wp->w_next;
- else
+ } else if (tp == NULL) {
+ firstwin = curtab->tp_firstwin = wp->w_next;
+ } else {
tp->tp_firstwin = wp->w_next;
- if (wp->w_next != NULL)
+ }
+ if (wp->w_next != NULL) {
wp->w_next->w_prev = wp->w_prev;
- else if (tp == NULL)
- lastwin = wp->w_prev;
- else
+ } else if (tp == NULL) {
+ lastwin = curtab->tp_lastwin = wp->w_prev;
+ } else {
tp->tp_lastwin = wp->w_prev;
+ }
}
/*