From 1574126e8a424a442b66b4bd778539b571eebfcf Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 27 Apr 2020 08:35:09 +0000 Subject: [PATCH] Do not close the stdout file descriptor in control mode as it will be needed for printing the exit messages. Fixes a bug when detaching with iTerm2. --- client.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/client.c b/client.c index 98565c5d..b3519690 100644 --- a/client.c +++ b/client.c @@ -518,7 +518,7 @@ client_write_open(void *data, size_t datalen) errno = EBADF; else { cf->fd = dup(msg->fd); - if (client_flags & CLIENT_CONTROL) + if (~client_flags & CLIENT_CONTROL) close(msg->fd); /* can only be used once */ } } @@ -673,7 +673,8 @@ client_read_open(void *data, size_t datalen) errno = EBADF; else { cf->fd = dup(msg->fd); - close(msg->fd); /* can only be used once */ + if (~client_flags & CLIENT_CONTROL) + close(msg->fd); /* can only be used once */ } } if (cf->fd == -1) {