about summary refs log tree commit homepage
path: root/lib/mongrel/camping.rb
diff options
context:
space:
mode:
authorwhy <why@19e92222-5c0b-0410-8929-a290d50e31e9>2006-04-10 18:56:16 +0000
committerwhy <why@19e92222-5c0b-0410-8929-a290d50e31e9>2006-04-10 18:56:16 +0000
commit894f4a0bd3407d99b779e739ef3c8c42c64bd4b1 (patch)
tree5f19328bc441a3aa22e70f4390fdc69e98f0d66a /lib/mongrel/camping.rb
parentcfcf2d88ec3336ba2034a9c61e9a6c9b7408e2b9 (diff)
downloadunicorn-894f4a0bd3407d99b779e739ef3c8c42c64bd4b1.tar.gz
git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@154 19e92222-5c0b-0410-8929-a290d50e31e9
Diffstat (limited to 'lib/mongrel/camping.rb')
-rw-r--r--lib/mongrel/camping.rb11
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/mongrel/camping.rb b/lib/mongrel/camping.rb
index d997a3b..26546c1 100644
--- a/lib/mongrel/camping.rb
+++ b/lib/mongrel/camping.rb
@@ -40,7 +40,16 @@ module Mongrel
               head[k] = vi
             end
           end
-          out << controller.body
+          if controller.body.respond_to? :read
+            while chunk = controller.body.read(16384)
+              out << chunk
+            end
+            if controller.body.respond_to? :close
+              controller.body.close
+            end
+          else
+            out << controller.body
+          end
         end
       end
     end