summaryrefslogtreecommitdiffstats
path: root/usr.bin/tmux/server-client.c
diff options
context:
space:
mode:
authornicm <nicm@openbsd.org>2012-09-27 10:02:56 +0000
committernicm <nicm@openbsd.org>2012-09-27 10:02:56 +0000
commit404dba31db0455f360e95ec8172286a9327da360 (patch)
tree282e9fc6be17a070a628b8ca2183874efad15fa8 /usr.bin/tmux/server-client.c
parentfix memory leak in case of fdopen() failure (diff)
downloadwireguard-openbsd-404dba31db0455f360e95ec8172286a9327da360.tar.xz
wireguard-openbsd-404dba31db0455f360e95ec8172286a9327da360.zip
Do not leak file descriptor if not a tty, reported by Sebastien Marie.
Diffstat (limited to 'usr.bin/tmux/server-client.c')
-rw-r--r--usr.bin/tmux/server-client.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/usr.bin/tmux/server-client.c b/usr.bin/tmux/server-client.c
index 16449d02f30..3e1582b959b 100644
--- a/usr.bin/tmux/server-client.c
+++ b/usr.bin/tmux/server-client.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: server-client.c,v 1.79 2012/09/03 09:32:38 nicm Exp $ */
+/* $OpenBSD: server-client.c,v 1.80 2012/09/27 10:02:56 nicm Exp $ */
/*
* Copyright (c) 2009 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -912,8 +912,10 @@ server_client_msg_identify(
return;
}
- if (!isatty(fd))
- return;
+ if (!isatty(fd)) {
+ close(fd);
+ return;
+ }
data->term[(sizeof data->term) - 1] = '\0';
tty_init(&c->tty, c, fd, data->term);
if (data->flags & IDENTIFY_UTF8)