Use single stdout and stderr for control clients.

This commit is contained in:
Nicholas Marriott
2013-03-11 09:46:18 +00:00
parent a6ad44f111
commit 412ac6bc3a
2 changed files with 8 additions and 1 deletions

View File

@ -153,7 +153,8 @@ server_client_lost(struct client *c)
evbuffer_free (c->stdin_data);
evbuffer_free (c->stdout_data);
evbuffer_free (c->stderr_data);
if (c->stderr_data != c->stdout_data)
evbuffer_free (c->stderr_data);
status_free_jobs(&c->status_new);
status_free_jobs(&c->status_old);
@ -955,6 +956,8 @@ server_client_msg_identify(
if (data->flags & IDENTIFY_CONTROL) {
c->stdin_callback = control_callback;
evbuffer_free(c->stderr_data);
c->stderr_data = c->stdout_data;
c->flags |= CLIENT_CONTROL;
if (data->flags & IDENTIFY_TERMIOS)
evbuffer_add_printf(c->stdout_data, "\033P1000p");