mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 00:56:10 +00:00 
			
		
		
		
	Send DSC 1000p at the beginning of a -CC client's lifetime and ST and the end,
from George Nachman..
This commit is contained in:
		
							
								
								
									
										10
									
								
								client.c
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								client.c
									
									
									
									
									
								
							@@ -296,8 +296,16 @@ client_main(int argc, char **argv, int flags)
 | 
			
		||||
		ppid = getppid();
 | 
			
		||||
		if (client_exittype == MSG_DETACHKILL && ppid > 1)
 | 
			
		||||
			kill(ppid, SIGHUP);
 | 
			
		||||
	} else if (flags & IDENTIFY_TERMIOS)
 | 
			
		||||
	} else if (flags & IDENTIFY_TERMIOS) {
 | 
			
		||||
		if (flags & IDENTIFY_CONTROL) {
 | 
			
		||||
			if (client_exitreason != CLIENT_EXIT_NONE)
 | 
			
		||||
			    printf("%%exit %s\n", client_exit_message());
 | 
			
		||||
			else
 | 
			
		||||
			    printf("%%exit\n");
 | 
			
		||||
			printf("\033\\");
 | 
			
		||||
		}
 | 
			
		||||
		tcsetattr(STDOUT_FILENO, TCSAFLUSH, &saved_tio);
 | 
			
		||||
	}
 | 
			
		||||
	setblocking(STDIN_FILENO, 1);
 | 
			
		||||
	return (client_exitval);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -956,6 +956,8 @@ server_client_msg_identify(
 | 
			
		||||
	if (data->flags & IDENTIFY_CONTROL) {
 | 
			
		||||
		c->stdin_callback = control_callback;
 | 
			
		||||
		c->flags |= CLIENT_CONTROL;
 | 
			
		||||
		if (data->flags & IDENTIFY_TERMIOS)
 | 
			
		||||
			evbuffer_add_printf(c->stdout_data, "\033P1000p");
 | 
			
		||||
		server_write_client(c, MSG_STDIN, NULL, 0);
 | 
			
		||||
 | 
			
		||||
		c->tty.fd = -1;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user