mirror of
https://github.com/tmux/tmux.git
synced 2025-09-01 20:57:00 +00:00
Pass the stdout file descriptor from the client as well as stdin and use
them for control clients directly instead of passing everything via the client.
This commit is contained in:
5
client.c
5
client.c
@ -402,6 +402,8 @@ client_main(struct event_base *base, int argc, char **argv, int flags, int feat)
|
||||
} else if (client_exitreason != CLIENT_EXIT_NONE)
|
||||
fprintf(stderr, "%s\n", client_exit_message());
|
||||
setblocking(STDIN_FILENO, 1);
|
||||
setblocking(STDOUT_FILENO, 1);
|
||||
setblocking(STDERR_FILENO, 1);
|
||||
return (client_exitval);
|
||||
}
|
||||
|
||||
@ -429,6 +431,9 @@ client_send_identify(const char *ttynam, const char *cwd, int feat)
|
||||
if ((fd = dup(STDIN_FILENO)) == -1)
|
||||
fatal("dup failed");
|
||||
proc_send(client_peer, MSG_IDENTIFY_STDIN, fd, NULL, 0);
|
||||
if ((fd = dup(STDOUT_FILENO)) == -1)
|
||||
fatal("dup failed");
|
||||
proc_send(client_peer, MSG_IDENTIFY_STDOUT, fd, NULL, 0);
|
||||
|
||||
pid = getpid();
|
||||
proc_send(client_peer, MSG_IDENTIFY_CLIENTPID, -1, &pid, sizeof pid);
|
||||
|
Reference in New Issue
Block a user