close master/slave pty in the shell process. - st - Simple Terminal
Log
Files
Refs
README
LICENSE
---
commit e8c13ebe8001a7870a70b698d8b8fa80b7c90fd3
parent 5c93f399c564f3475ffa4d3b3314a06db533e410
Author: Aurélien Aptel 
Date:   Thu, 26 Aug 2010 21:36:21 +0200

close master/slave pty in the shell process.

Diffstat:
  st.c                                |       6 ++++--

1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/st.c b/st.c
@@ -247,7 +247,7 @@ ttynew(void) {
         if((m = posix_openpt(O_RDWR | O_NOCTTY)) < 0)
                 die("openpt failed: %s\n", SERRNO);
         if(grantpt(m) < 0)
-                die("grandpt failed: %s\n", SERRNO);
+                die("grantpt failed: %s\n", SERRNO);
         if(unlockpt(m) < 0)
                 die("unlockpt failed: %s\n", SERRNO);
         if(!(pts = ptsname(m)))
@@ -265,7 +265,9 @@ ttynew(void) {
                 dup2(s, STDOUT_FILENO);
                 dup2(s, STDERR_FILENO);
                 if(ioctl(s, TIOCSCTTY, NULL) < 0)
-                        die("ioctl TTIOCSTTY failed: %s\n", SERRNO);
+                        die("ioctl TIOCSCTTY failed: %s\n", SERRNO);
+                close(s);
+                close(m);
                 execsh();
                 break;
         default: