When looking for panes, ignore dead ones (with -1 file

descriptor). GitHub issue 1354.
This commit is contained in:
nicm 2018-05-28 11:50:47 +00:00
parent b602c1fb9a
commit c177a627d2

View File

@ -112,7 +112,7 @@ cmd_find_inside_pane(struct client *c)
return (NULL); return (NULL);
RB_FOREACH(wp, window_pane_tree, &all_window_panes) { RB_FOREACH(wp, window_pane_tree, &all_window_panes) {
if (strcmp(wp->tty, c->ttyname) == 0) if (wp->fd != -1 && strcmp(wp->tty, c->ttyname) == 0)
break; break;
} }
if (wp != NULL) if (wp != NULL)
@ -223,7 +223,7 @@ fail:
} }
/* /*
* Find the best winlink for a window (the current if it contains the pane, * Find the best winlink for a window (the current if it contains the window,
* otherwise the first). * otherwise the first).
*/ */
static int static int
@ -920,6 +920,10 @@ cmd_find_from_client(struct cmd_find_state *fs, struct client *c, int flags)
cmd_find_log_state(__func__, fs); cmd_find_log_state(__func__, fs);
return (0); return (0);
} }
else {
log_debug("%s: session $%u does not have pane %%%u",
__func__, s->id, wp->id);
}
} }
/* /*