mirror of
				https://github.com/tmux/tmux.git
				synced 2025-10-26 12:27:15 +00:00 
			
		
		
		
	Use single stdout and stderr for control clients.
This commit is contained in:
		| @@ -153,6 +153,7 @@ server_client_lost(struct client *c) | ||||
|  | ||||
| 	evbuffer_free (c->stdin_data); | ||||
| 	evbuffer_free (c->stdout_data); | ||||
| 	if (c->stderr_data != c->stdout_data) | ||||
| 		evbuffer_free (c->stderr_data); | ||||
|  | ||||
| 	status_free_jobs(&c->status_new); | ||||
| @@ -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"); | ||||
|   | ||||
| @@ -546,6 +546,10 @@ server_push_stderr(struct client *c) | ||||
| 	struct msg_stderr_data data; | ||||
| 	size_t                 size; | ||||
|  | ||||
| 	if (c->stderr_data == c->stdout_data) { | ||||
| 		server_push_stdout(c); | ||||
| 		return; | ||||
| 	} | ||||
| 	size = EVBUFFER_LENGTH(c->stderr_data); | ||||
| 	if (size == 0) | ||||
| 		return; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Nicholas Marriott
					Nicholas Marriott