diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-11 15:05:52 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-05-11 15:05:52 +0000 |
commit | 94d336ef86cbbc43eadd90e185faecfb1097a9ff (patch) | |
tree | 0d294d5ed0366556ae0c10b602d1cdf8dedc0367 | |
parent | 19ad6658b510cd0c94fd9cb0cd4137d19a0412d7 (diff) |
merges r23287 from trunk into ruby_1_9_1.
--
* io.c (io_reopen): keeps pathv for prep_stdio. [ruby-dev:38131]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_1@23397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | io.c | 4 |
2 files changed, 6 insertions, 2 deletions
@@ -1,3 +1,7 @@ +Sun Apr 26 18:35:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * io.c (io_reopen): keeps pathv for prep_stdio. [ruby-dev:38131] + Sun Apr 26 15:13:09 2009 Nobuyoshi Nakada <nobu@ruby-lang.org> * lib/optparse.rb (OptionParser#parse_in_order): do not make an @@ -5236,8 +5236,8 @@ io_reopen(VALUE io, VALUE nfile) fptr->mode = orig->mode | (fptr->mode & FMODE_PREP); fptr->pid = orig->pid; fptr->lineno = orig->lineno; - if (orig->pathv) fptr->pathv = orig->pathv; - else fptr->pathv = Qnil; + if (RTEST(orig->pathv)) fptr->pathv = orig->pathv; + else if (!IS_PREP_STDIO(fptr)) fptr->pathv = Qnil; fptr->finalize = orig->finalize; #if defined (__CYGWIN__) || !defined(HAVE_FORK) if (fptr->finalize == pipe_finalize) |