summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-12-10 05:50:12 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-12-10 05:50:12 +0000
commite5d803e671c4814074cbdb652436c1599e8e2549 (patch)
tree8f5ad8800ed2970add6337d7cb587cefc4866f09
parent3db654d88a95171401581b00c50b00e63cb6b7e0 (diff)
downloadruby-e5d803e671c4814074cbdb652436c1599e8e2549.tar.gz
* ext/pty/pty.c (HAVE_SYS_IOCTL_H): already defined at config.h, so
use it. * ext/pty/pty.c (establishShell): should close descriptors if fork failed. (ruby-bugs:PR#1211) based on gotoyuzo's patch. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog8
-rw-r--r--ext/pty/pty.c4
2 files changed, 11 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 7203923cf8..ff69f6fb6b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+Wed Dec 10 14:45:39 2003 WATANABE Hirofumi <eban@ruby-lang.org>
+
+ * ext/pty/pty.c (HAVE_SYS_IOCTL_H): already defined at config.h, so
+ use it.
+
+ * ext/pty/pty.c (establishShell): should close descriptors if fork
+ failed. (ruby-bugs:PR#1211) based on gotoyuzo's patch.
+
Wed Dec 10 12:53:05 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* win32/win32.h: define execv() using do_aspawn().
diff --git a/ext/pty/pty.c b/ext/pty/pty.c
index 01382e881a..0858f97441 100644
--- a/ext/pty/pty.c
+++ b/ext/pty/pty.c
@@ -6,7 +6,7 @@
#include <fcntl.h>
#include <errno.h>
#include <pwd.h>
-#if !defined(HAVE_OPENPTY) && !defined(HAVE__GETPTY)
+#ifdef HAVE_SYS_IOCTL_H
#include <sys/ioctl.h>
#endif
#ifdef HAVE_LIBUTIL_H
@@ -229,6 +229,8 @@ establishShell(argc, argv, info)
info->thread = rb_thread_current();
currentPid = getpid();
if((i = fork()) < 0) {
+ close(master);
+ close(slave);
rb_sys_fail("fork failed");
}