From 96abe7f35e3e03a861ea2b1bf7cc6e62a0615b3c Mon Sep 17 00:00:00 2001 From: usa Date: Thu, 31 Dec 2009 05:22:11 +0000 Subject: [PATCH] * process.c (save_redirect_fd): consider EBADF that the fd is not used. [ruby-dev:39938] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ process.c | 2 ++ 2 files changed, 7 insertions(+) diff --git a/ChangeLog b/ChangeLog index 1190b3f89b..53c2e16862 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Dec 31 14:20:11 2009 NAKAMURA Usaku + + * process.c (save_redirect_fd): consider EBADF that the fd is not used. + [ruby-dev:39938] + Thu Dec 31 06:03:48 2009 Nobuyoshi Nakada * ext/socket/raddrinfo.c (addrinfo_type): typed. diff --git a/process.c b/process.c index 081e927bab..07ad06e178 100644 --- a/process.c +++ b/process.c @@ -1863,6 +1863,8 @@ save_redirect_fd(int fd, VALUE save, char *errmsg, size_t errmsg_buflen) VALUE newary; int save_fd = redirect_dup(fd); if (save_fd == -1) { + if (errno == EBADF) + return 0; ERRMSG("dup"); return -1; }