summaryrefslogtreecommitdiffstats
path: root/cmd-attach-session.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2012-05-06 07:38:17 +0000
committerNicholas Marriott <nicm@openbsd.org>2012-05-06 07:38:17 +0000
commit37f9bb46d815e8ba6377c3435d72c052267831ed (patch)
tree9dc322b5aed567b82b0b4ac1c1b7f5d1f028bb03 /cmd-attach-session.c
parent218b692221b9dd675275ec353364910dfc072151 (diff)
Add a helper function to open the terminal for attach-/new-session.
Diffstat (limited to 'cmd-attach-session.c')
-rw-r--r--cmd-attach-session.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/cmd-attach-session.c b/cmd-attach-session.c
index bdf3568e..c4ee2437 100644
--- a/cmd-attach-session.c
+++ b/cmd-attach-session.c
@@ -43,7 +43,7 @@ cmd_attach_session_exec(struct cmd *self, struct cmd_ctx *ctx)
struct session *s;
struct client *c;
const char *update;
- char *overrides, *cause;
+ char *cause;
u_int i;
if (RB_EMPTY(&sessions)) {
@@ -79,15 +79,8 @@ cmd_attach_session_exec(struct cmd *self, struct cmd_ctx *ctx)
server_redraw_client(ctx->curclient);
s->curw->flags &= ~WINLINK_ALERTFLAGS;
} else {
- if (!(ctx->cmdclient->flags & CLIENT_TERMINAL)) {
- ctx->error(ctx, "not a terminal");
- return (-1);
- }
-
- overrides =
- options_get_string(&s->options, "terminal-overrides");
- if (tty_open(&ctx->cmdclient->tty, overrides, &cause) != 0) {
- ctx->error(ctx, "terminal open failed: %s", cause);
+ if (server_client_open(ctx->cmdclient, s, &cause) != 0) {
+ ctx->error(ctx, "open terminal failed: %s", cause);
xfree(cause);
return (-1);
}