Issue #11136 has been updated by Nobuyoshi Nakada.


After requiring 'io/nonblock', no needs to see if `nonblock=` method is available.
And `IO#close_on_exec=` is older than `IO#nonblock=`.


----------------------------------------
Feature #11136: [PATCH] webrick: avoid fcntl module
https://bugs.ruby-lang.org/issues/11136#change-52386

* Author: Eric Wong
* Status: Open
* Priority: Normal
* Assignee: Akira Tanaka
----------------------------------------
lib/webrick/utils.rb: simplify by avoiding fcntl

IO#nonblock= and IO#close_on_exec= methods are simpler-to-use
and potentially more portable to for future OSes.
IO#nonblock= and IO#close_on_exec= are also smart enough to avoid
redundantly setting flags so a syscall may be avoided.

These methods could probably be removed entirely and inlined, but
it's unclear if there is 3rd-party code which relies on them.

* lib/webrick/utils.rb (set_non_blocking): use IO#nonblock=
* (set_close_on_exec): use IO#close_on_exec=

Note: next commit will remove the set_close_on_exec call.


---Files--------------------------------
0001-lib-webrick-utils.rb-simplify-by-avoiding-fcntl.patch (1.74 KB)


-- 
https://bugs.ruby-lang.org/