mirror of
https://github.com/tmux/tmux.git
synced 2025-01-12 11:18:48 +00:00
When the session option renumber-window is used, ensure we iterate over
all sessions in that group when the winlinks are reordered, otherwise the winlink lists are out of sync with one another. From Thomas Adam.
This commit is contained in:
parent
7af5fec038
commit
064124cc5f
10
server-fn.c
10
server-fn.c
@ -262,7 +262,8 @@ server_lock_client(struct client *c)
|
|||||||
void
|
void
|
||||||
server_kill_window(struct window *w)
|
server_kill_window(struct window *w)
|
||||||
{
|
{
|
||||||
struct session *s, *next_s;
|
struct session *s, *next_s, *target_s;
|
||||||
|
struct session_group *sg;
|
||||||
struct winlink *wl;
|
struct winlink *wl;
|
||||||
|
|
||||||
next_s = RB_MIN(sessions, &sessions);
|
next_s = RB_MIN(sessions, &sessions);
|
||||||
@ -280,9 +281,14 @@ server_kill_window(struct window *w)
|
|||||||
server_redraw_session_group(s);
|
server_redraw_session_group(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (options_get_number(&s->options, "renumber-windows"))
|
if (options_get_number(&s->options, "renumber-windows")) {
|
||||||
|
if ((sg = session_group_find(s)) != NULL) {
|
||||||
|
TAILQ_FOREACH(target_s, &sg->sessions, gentry)
|
||||||
|
session_renumber_windows(target_s);
|
||||||
|
} else
|
||||||
session_renumber_windows(s);
|
session_renumber_windows(s);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
recalculate_sizes();
|
recalculate_sizes();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user