summary refs log tree commit
diff options
context:
space:
mode:
authorJames Tucker <jftucker@gmail.com>2014-07-05 17:08:44 -0700
committerJames Tucker <jftucker@gmail.com>2014-07-05 17:08:44 -0700
commit1b2fb3c805e7983d5f979823f93a5ebb190643d3 (patch)
tree604275733f5d8c8e05b5c25e77ede8f4ea582f9f
parentcfd173bf043d8c0db885e36803fb750dae2436e5 (diff)
parent6aa56de9f7e07ca19fee5082c5498cd32a5a7012 (diff)
downloadrack-1b2fb3c805e7983d5f979823f93a5ebb190643d3.tar.gz
Merge pull request #646 from KitaitiMakoto/close-body-when-fresh
Close body if content is fresh enough
-rw-r--r--lib/rack/conditionalget.rb5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/rack/conditionalget.rb b/lib/rack/conditionalget.rb
index ed87c54e..88573166 100644
--- a/lib/rack/conditionalget.rb
+++ b/lib/rack/conditionalget.rb
@@ -28,7 +28,10 @@ module Rack
           status = 304
           headers.delete('Content-Type')
           headers.delete('Content-Length')
-          body = []
+          original_body = body
+          body = Rack::BodyProxy.new([]) do
+            original_body.close if original_body.respond_to?(:close)
+          end
         end
         [status, headers, body]
       else