diff --git a/actionpack/lib/action_dispatch/middleware/body_proxy.rb b/actionpack/lib/action_dispatch/middleware/body_proxy.rb index 867afe3b48c1a..739b9e427aa9f 100644 --- a/actionpack/lib/action_dispatch/middleware/body_proxy.rb +++ b/actionpack/lib/action_dispatch/middleware/body_proxy.rb @@ -12,9 +12,11 @@ def respond_to?(*args) def close return if @closed @closed = true - @body.close if @body.respond_to? :close - ensure - @block.call + begin + @body.close if @body.respond_to? :close + ensure + @block.call + end end def closed?