diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-08-20 13:32:08 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-08-20 13:32:08 +0000 |
commit | 4046ecde2f6880390f30d68570f570269f397a88 (patch) | |
tree | d64dcd0544a11b502b66030808ebf6ac81c5ff98 /io.c | |
parent | 9286180079614b7f953a0c6832ad38c6d5a5af9f (diff) | |
download | ruby-4046ecde2f6880390f30d68570f570269f397a88.tar.gz |
* io.c (rb_file_open_internal): use rb_io_flags_modenum.
(rb_io_reopen): use rb_io_flags_modenum and rb_io_modenum_mode.
(rb_io_stdio_file): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 15 |
1 files changed, 8 insertions, 7 deletions
@@ -3976,7 +3976,7 @@ rb_file_open_internal(VALUE io, const char *fname, const char *mode) flags = rb_io_mode_flags(mode); return rb_file_open_generic(io, fname, - rb_io_mode_modenum(rb_io_flags_mode(flags)), + rb_io_flags_modenum(flags), flags, &convconfig, 0666); @@ -4917,7 +4917,7 @@ static VALUE rb_io_reopen(int argc, VALUE *argv, VALUE file) { VALUE fname, nmode; - const char *mode; + int modenum; rb_io_t *fptr; rb_secure(4); @@ -4956,9 +4956,9 @@ rb_io_reopen(int argc, VALUE *argv, VALUE file) } fptr->path = strdup(StringValueCStr(fname)); - mode = rb_io_flags_mode(fptr->mode); + modenum = rb_io_flags_modenum(fptr->mode); if (fptr->fd < 0) { - fptr->fd = rb_sysopen(fptr->path, rb_io_mode_modenum(mode), 0666); + fptr->fd = rb_sysopen(fptr->path, modenum, 0666); fptr->stdio_file = 0; return file; } @@ -4969,7 +4969,7 @@ rb_io_reopen(int argc, VALUE *argv, VALUE file) fptr->rbuf_off = fptr->rbuf_len = 0; if (fptr->stdio_file) { - if (freopen(fptr->path, mode, fptr->stdio_file) == 0) { + if (freopen(fptr->path, rb_io_modenum_mode(modenum), fptr->stdio_file) == 0) { rb_sys_fail(fptr->path); } fptr->fd = fileno(fptr->stdio_file); @@ -4982,7 +4982,7 @@ rb_io_reopen(int argc, VALUE *argv, VALUE file) if (close(fptr->fd) < 0) rb_sys_fail(fptr->path); fptr->fd = -1; - fptr->fd = rb_sysopen(fptr->path, rb_io_mode_modenum(mode), 0666); + fptr->fd = rb_sysopen(fptr->path, modenum, 0666); } return file; @@ -5442,7 +5442,8 @@ FILE * rb_io_stdio_file(rb_io_t *fptr) { if (!fptr->stdio_file) { - fptr->stdio_file = rb_fdopen(fptr->fd, rb_io_flags_mode(fptr->mode)); + int modenum = rb_io_flags_modenum(fptr->mode); + fptr->stdio_file = rb_fdopen(fptr->fd, rb_io_modenum_mode(modenum)); } return fptr->stdio_file; } |