diff options
| -rw-r--r-- | st.c | 5 | 
1 files changed, 3 insertions, 2 deletions
@@ -793,14 +793,15 @@ ttynew(const char *line, char *cmd, const char *out, char **args)  		break;  	case 0:  		close(iofd); +		close(m);  		setsid(); /* create a new process group */  		dup2(s, 0);  		dup2(s, 1);  		dup2(s, 2);  		if (ioctl(s, TIOCSCTTY, NULL) < 0)  			die("ioctl TIOCSCTTY failed: %s\n", strerror(errno)); -		close(s); -		close(m); +		if (s > 2) +			close(s);  #ifdef __OpenBSD__  		if (pledge("stdio getpw proc exec", NULL) == -1)  			die("pledge\n");  | 
