diff options
author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-20 09:14:30 +0000 |
---|---|---|
committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-07-20 09:14:30 +0000 |
commit | 74e1cc9e55eae39b2adcbdec1d4bff0b70bf0c88 (patch) | |
tree | 5bbd5478de93d2fb437a6d38fc1d3cd2eea86b44 /io.c | |
parent | 2201229b4aebd2ebb08eae05ff197f0adfd4f4e5 (diff) | |
download | ruby-74e1cc9e55eae39b2adcbdec1d4bff0b70bf0c88.tar.gz |
* io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
by F_SETFL.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -4843,6 +4843,16 @@ rb_io_ctl(io, req, arg, io_p) rb_raise(rb_eArgError, "return value overflowed string"); } + if (!io_p && cmd == F_SETFL) { + if (narg & O_NONBLOCK) { + fptr->mode |= FMODE_WSPLIT_INITIALIZED; + fptr->mode &= ~FMODE_WSPLIT; + } + else { + fptr->mode &= ~(FMODE_WSPLIT_INITIALIZED|FMODE_WSPLIT); + } + } + return INT2NUM(retval); #else rb_notimplement(); |