Heads up, I just pushed this out to unicorn.git and it''ll be in the
next Unicorn release.
>From cc7e65a1aa1bacc9658a687140011e999be6e3e7 Mon Sep 17 00:00:00 2001
From: Eric Wong <normalperson at yhbt.net>
Date: Fri, 25 Feb 2011 17:54:24 +0000
Subject: [PATCH] tee_input: remove old *BSD stdio workaround
Ruby 1.8.* users should get the latest Ruby 1.8.7 anyways since
they contain critical bugfixes. We don''t keep workarounds
forever since the root problem is fixed/worked-around in
upstream and people have had more than a year to upgrade Ruby.
---
KNOWN_ISSUES | 4 ++++
lib/unicorn/tee_input.rb | 1 -
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/KNOWN_ISSUES b/KNOWN_ISSUES
index 259681d..35dc9f3 100644
--- a/KNOWN_ISSUES
+++ b/KNOWN_ISSUES
@@ -8,6 +8,10 @@ acceptable solution. Those issues are documented here.
See http://redmine.ruby-lang.org/issues/show/4338
+* On Ruby 1.8 prior to Ruby 1.8.7-p248, *BSD platforms have a broken
+ stdio that causes failure for file uploads larger than 112K. Upgrade
+ your version of Ruby or continue using Unicorn 1.x/3.4.x.
+
* For notes on sandboxing tools such as Bundler or Isolate,
see the {Sandbox}[link:Sandbox.html] page.
diff --git a/lib/unicorn/tee_input.rb b/lib/unicorn/tee_input.rb
index 6d37f87..637c583 100644
--- a/lib/unicorn/tee_input.rb
+++ b/lib/unicorn/tee_input.rb
@@ -120,7 +120,6 @@ private
def tee(buffer)
if buffer && buffer.size > 0
@tmp.write(buffer)
- @tmp.seek(0, IO::SEEK_END) # workaround FreeBSD/OSX + MRI 1.8.x bug
end
buffer
end
--
Eric Wong