version 1.45, 2012/07/11 07:10:15 |
version 1.46, 2012/11/19 10:38:06 |
|
|
struct args *args = self->args; |
struct args *args = self->args; |
struct session *s, *old_s, *groupwith; |
struct session *s, *old_s, *groupwith; |
struct window *w; |
struct window *w; |
struct window_pane *wp; |
|
struct environ env; |
struct environ env; |
struct termios tio, *tiop; |
struct termios tio, *tiop; |
struct passwd *pw; |
struct passwd *pw; |
const char *newname, *target, *update, *cwd, *errstr; |
const char *newname, *target, *update, *cwd, *errstr; |
char *cmd, *cause; |
char *cmd, *cause; |
int detached, idx; |
int detached, idx; |
u_int sx, sy, i; |
u_int sx, sy; |
|
|
newname = args_get(args, 's'); |
newname = args_get(args, 's'); |
if (newname != NULL) { |
if (newname != NULL) { |
|
|
* If there are still configuration file errors to display, put the new |
* If there are still configuration file errors to display, put the new |
* session's current window into more mode and display them now. |
* session's current window into more mode and display them now. |
*/ |
*/ |
if (cfg_finished && !ARRAY_EMPTY(&cfg_causes)) { |
if (cfg_finished) |
wp = s->curw->window->active; |
show_cfg_causes(s); |
window_pane_set_mode(wp, &window_copy_mode); |
|
window_copy_init_for_output(wp); |
|
for (i = 0; i < ARRAY_LENGTH(&cfg_causes); i++) { |
|
cause = ARRAY_ITEM(&cfg_causes, i); |
|
window_copy_add(wp, "%s", cause); |
|
free(cause); |
|
} |
|
ARRAY_FREE(&cfg_causes); |
|
} |
|
|
|
return (detached ? CMD_RETURN_NORMAL : CMD_RETURN_ATTACH); |
return (detached ? CMD_RETURN_NORMAL : CMD_RETURN_ATTACH); |
} |
} |