Rainbows! Rack HTTP server user/dev discussion
 help / Atom feed
From: Eric Wong <e@80x24.org>
To: rainbows-public@bogomips.org
Subject: [PATCH 4/5] revactor: remove fcntl dependency
Date: Sat, 21 Nov 2015 08:52:31 +0000
Message-ID: <20151121085232.23086-5-e@80x24.org> (raw)
In-Reply-To: <20151121085232.23086-1-e@80x24.org>

In the unlikely case somebody runs revactor, they won't need to
load the extra fcntl.so library into their process anymore.

In retrospect, we could've alway used IO#close_on_exec= since
it appeared in 1.9.1 and (IIRC) revactor always required 1.9.1+
---
 lib/rainbows/revactor.rb        | 1 -
 lib/rainbows/revactor/client.rb | 3 +--
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/lib/rainbows/revactor.rb b/lib/rainbows/revactor.rb
index e68fee6..fae5f16 100644
--- a/lib/rainbows/revactor.rb
+++ b/lib/rainbows/revactor.rb
@@ -1,6 +1,5 @@
 # -*- encoding: binary -*-
 require 'revactor'
-require 'fcntl'
 Revactor::VERSION >= '0.1.5' or abort 'revactor 0.1.5 is required'
 
 # Enables use of the Actor model through {Revactor}[http://revactor.org]
diff --git a/lib/rainbows/revactor/client.rb b/lib/rainbows/revactor/client.rb
index c1cb7aa..5b1e52d 100644
--- a/lib/rainbows/revactor/client.rb
+++ b/lib/rainbows/revactor/client.rb
@@ -1,6 +1,5 @@
 # -*- encoding: binary -*-
 # :enddoc:
-require 'fcntl'
 class Rainbows::Revactor::Client
   autoload :TeeSocket, 'rainbows/revactor/client/tee_socket'
   RD_ARGS = {}
@@ -11,7 +10,7 @@ class Rainbows::Revactor::Client
   def initialize(client)
     @client, @rd_args, @ts = client, [ nil ], nil
     io = client.instance_variable_get(:@_io)
-    io.fcntl(Fcntl::F_SETFD, Fcntl::FD_CLOEXEC)
+    io.close_on_exec = true
     @kgio_addr = if Revactor::TCP::Socket === client
       @rd_args << RD_ARGS
       client.remote_addr
-- 
EW


  parent reply index

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-21  8:52 [PATCH 0/5] a few more odds and ends before 5.0 Eric Wong
2015-11-21  8:52 ` [PATCH 1/5] tiny bytecode reductions for cold paths Eric Wong
2015-11-21  8:52 ` [PATCH 2/5] Ruby 1.9.3+-only cleanups Eric Wong
2015-11-21  8:52 ` [PATCH 3/5] response: avoid garbage string entirely Eric Wong
2015-11-21  8:52 ` Eric Wong [this message]
2015-11-21  8:52 ` [PATCH 5/5] response: simplify regexp Eric Wong

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://bogomips.org/rainbows/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151121085232.23086-5-e@80x24.org \
    --to=e@80x24.org \
    --cc=rainbows-public@bogomips.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Rainbows! Rack HTTP server user/dev discussion

Archives are clonable:
	git clone --mirror https://bogomips.org/rainbows-public
	git clone --mirror http://ou63pmih66umazou.onion/rainbows-public

Newsgroups are available over NNTP:
	nntp://news.public-inbox.org/inbox.comp.lang.ruby.rainbows
	nntp://ou63pmih66umazou.onion/inbox.comp.lang.ruby.rainbows

 note: .onion URLs require Tor: https://www.torproject.org/
       or Tor2web: https://www.tor2web.org/

AGPL code for this site: git clone https://public-inbox.org/ public-inbox