mirror of
https://github.com/tmux/tmux.git
synced 2025-04-21 11:58:48 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
934f357149
@ -708,7 +708,7 @@ session_renumber_windows(struct session *s)
|
|||||||
struct winlink *wl, *wl1, *wl_new;
|
struct winlink *wl, *wl1, *wl_new;
|
||||||
struct winlinks old_wins;
|
struct winlinks old_wins;
|
||||||
struct winlink_stack old_lastw;
|
struct winlink_stack old_lastw;
|
||||||
int new_idx, new_curw_idx;
|
int new_idx, new_curw_idx, marked_idx = -1;
|
||||||
|
|
||||||
/* Save and replace old window list. */
|
/* Save and replace old window list. */
|
||||||
memcpy(&old_wins, &s->windows, sizeof old_wins);
|
memcpy(&old_wins, &s->windows, sizeof old_wins);
|
||||||
@ -725,6 +725,8 @@ session_renumber_windows(struct session *s)
|
|||||||
winlink_set_window(wl_new, wl->window);
|
winlink_set_window(wl_new, wl->window);
|
||||||
wl_new->flags |= wl->flags & WINLINK_ALERTFLAGS;
|
wl_new->flags |= wl->flags & WINLINK_ALERTFLAGS;
|
||||||
|
|
||||||
|
if (wl == marked_pane.wl)
|
||||||
|
marked_idx = wl_new->idx;
|
||||||
if (wl == s->curw)
|
if (wl == s->curw)
|
||||||
new_curw_idx = wl_new->idx;
|
new_curw_idx = wl_new->idx;
|
||||||
|
|
||||||
@ -741,6 +743,11 @@ session_renumber_windows(struct session *s)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Set the current window. */
|
/* Set the current window. */
|
||||||
|
if (marked_idx != -1) {
|
||||||
|
marked_pane.wl = winlink_find_by_index(&s->windows, marked_idx);
|
||||||
|
if (marked_pane.wl == NULL)
|
||||||
|
server_clear_marked();
|
||||||
|
}
|
||||||
s->curw = winlink_find_by_index(&s->windows, new_curw_idx);
|
s->curw = winlink_find_by_index(&s->windows, new_curw_idx);
|
||||||
|
|
||||||
/* Free the old winlinks (reducing window references too). */
|
/* Free the old winlinks (reducing window references too). */
|
||||||
|
Loading…
Reference in New Issue
Block a user