diff --git a/server.c b/server.c index 81cd6950..877724fd 100644 --- a/server.c +++ b/server.c @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.33 2007-10-24 11:21:29 nicm Exp $ */ +/* $Id: server.c,v 1.34 2007-10-24 11:30:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -105,6 +105,8 @@ server_start(char *path) fatal("fcntl failed"); if (fcntl(fd, F_SETFL, mode|O_NONBLOCK) == -1) fatal("fcntl failed"); + if (fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) + fatal("fcntl failed"); if (daemon(1, 1) != 0) fatal("daemon failed"); diff --git a/window.c b/window.c index ec33d7cd..722f9d8a 100644 --- a/window.c +++ b/window.c @@ -1,4 +1,4 @@ -/* $Id: window.c,v 1.21 2007-10-23 11:25:32 nicm Exp $ */ +/* $Id: window.c,v 1.22 2007-10-24 11:30:02 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -89,6 +89,8 @@ window_create( fatal("fcntl failed"); if (fcntl(fd, F_SETFL, mode|O_NONBLOCK) == -1) fatal("fcntl failed"); + if (fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) + fatal("fcntl failed"); mode = 1; if (ioctl(fd, TIOCPKT, &mode) == -1)