version 1.85, 2020/09/03 12:47:33 |
version 1.86, 2021/08/13 06:52:51 |
|
|
if (!Eflag) |
if (!Eflag) |
environ_update(s->options, c->environ, s->environ); |
environ_update(s->options, c->environ, s->environ); |
|
|
c->session = s; |
server_client_set_session(c, s); |
if (~cmdq_get_flags(item) & CMDQ_STATE_REPEAT) |
if (~cmdq_get_flags(item) & CMDQ_STATE_REPEAT) |
server_client_set_key_table(c, NULL); |
server_client_set_key_table(c, NULL); |
tty_update_client_offset(c); |
|
status_timer_start(c); |
|
notify_client("client-session-changed", c); |
|
session_update_activity(s, NULL); |
|
gettimeofday(&s->last_attached_time, NULL); |
|
server_redraw_client(c); |
|
s->curw->flags &= ~WINLINK_ALERTFLAGS; |
|
s->curw->window->latest = c; |
|
} else { |
} else { |
if (server_client_open(c, &cause) != 0) { |
if (server_client_open(c, &cause) != 0) { |
cmdq_error(item, "open terminal failed: %s", cause); |
cmdq_error(item, "open terminal failed: %s", cause); |
|
|
if (!Eflag) |
if (!Eflag) |
environ_update(s->options, c->environ, s->environ); |
environ_update(s->options, c->environ, s->environ); |
|
|
c->session = s; |
server_client_set_session(c, s); |
server_client_set_key_table(c, NULL); |
server_client_set_key_table(c, NULL); |
tty_update_client_offset(c); |
|
status_timer_start(c); |
|
notify_client("client-session-changed", c); |
|
session_update_activity(s, NULL); |
|
gettimeofday(&s->last_attached_time, NULL); |
|
server_redraw_client(c); |
|
s->curw->flags &= ~WINLINK_ALERTFLAGS; |
|
s->curw->window->latest = c; |
|
|
|
if (~c->flags & CLIENT_CONTROL) |
if (~c->flags & CLIENT_CONTROL) |
proc_send(c->peer, MSG_READY, -1, NULL, 0); |
proc_send(c->peer, MSG_READY, -1, NULL, 0); |
notify_client("client-attached", c); |
notify_client("client-attached", c); |
c->flags |= CLIENT_ATTACHED; |
c->flags |= CLIENT_ATTACHED; |
} |
} |
recalculate_sizes(); |
|
alerts_check_session(s); |
|
server_update_socket(); |
|
|
|
return (CMD_RETURN_NORMAL); |
return (CMD_RETURN_NORMAL); |
} |
} |