From 075f83bf7929daa152dc1c12e2c53b8c61cc15c0 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 14 Jun 2010 08:00:04 +0000 Subject: app/exec_cgi: rack.input may not respond to #size Rack 1.2 no longer requires "rack.input" objects respond to size. --- lib/unicorn/app/exec_cgi.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/unicorn/app/exec_cgi.rb b/lib/unicorn/app/exec_cgi.rb index ef2a18e..412c1d9 100644 --- a/lib/unicorn/app/exec_cgi.rb +++ b/lib/unicorn/app/exec_cgi.rb @@ -120,7 +120,8 @@ module Unicorn::App # ensures rack.input is a file handle that we can redirect stdin to def force_file_input(env) inp = env['rack.input'] - if inp.size == 0 # inp could be a StringIO or StringIO-like object + # inp could be a StringIO or StringIO-like object + if inp.respond_to?(:size) && inp.size == 0 ::File.open('/dev/null', 'rb') else tmp = Unicorn::Util.tmpio -- cgit v1.2.3-24-ge0c7