diff --git a/cmd-command-prompt.c b/cmd-command-prompt.c index 7e3d23c5..4943bc15 100644 --- a/cmd-command-prompt.c +++ b/cmd-command-prompt.c @@ -79,6 +79,8 @@ cmd_command_prompt_exec(struct cmd *self, struct cmdq_item *item) if (tc->prompt_string != NULL) return (CMD_RETURN_NORMAL); + if (args_has(args, 'i')) + wait = 0; cdata = xcalloc(1, sizeof *cdata); cdata->idx = 1; diff --git a/cmd-pipe-pane.c b/cmd-pipe-pane.c index f3fe6344..ae410d6e 100644 --- a/cmd-pipe-pane.c +++ b/cmd-pipe-pane.c @@ -44,7 +44,7 @@ const struct cmd_entry cmd_pipe_pane_entry = { .alias = "pipep", .args = { "IOot:", 0, 1 }, - .usage = "[-IOo] " CMD_TARGET_PANE_USAGE " [command]", + .usage = "[-IOo] " CMD_TARGET_PANE_USAGE " [shell-command]", .target = { 't', CMD_FIND_PANE, 0 }, diff --git a/control.c b/control.c index 7a5b9eb2..97f8b761 100644 --- a/control.c +++ b/control.c @@ -664,7 +664,7 @@ control_write_pending(struct client *c, struct control_pane *cp, size_t limit) uint64_t age, t = get_timer(); wp = control_window_pane(c, cp->pane); - if (wp == NULL) { + if (wp == NULL || wp->fd == -1) { TAILQ_FOREACH_SAFE(cb, &cp->blocks, entry, cb1) { TAILQ_REMOVE(&cp->blocks, cb, entry); control_free_block(cs, cb); @@ -864,7 +864,7 @@ control_check_subs_pane(struct client *c, struct control_sub *csub) struct control_sub_pane *csp, find; wp = window_pane_find_by_id(csub->id); - if (wp == NULL) + if (wp == NULL || wp->fd == -1) return; w = wp->window;