summary refs log tree commit
path: root/lib/rack/body_proxy.rb
diff options
context:
space:
mode:
authorKonstantin Haase <konstantin.mailinglists@googlemail.com>2014-10-02 15:35:27 +0200
committerKonstantin Haase <konstantin.mailinglists@googlemail.com>2014-10-02 15:35:27 +0200
commitab172af1b63f0d8e91ce579dd2907c43b96cf82a (patch)
tree991037ede0df148b5aef7137f321591401f98d53 /lib/rack/body_proxy.rb
parenta71be3c914c10d1089238f4e21b029b885be4029 (diff)
parentdc53a8c26dc55d21240233b3d83d36efdef6e924 (diff)
downloadrack-ab172af1b63f0d8e91ce579dd2907c43b96cf82a.tar.gz
Merge pull request #737 from schneems/schneems/less-objects
Less allocated objects on each request
Diffstat (limited to 'lib/rack/body_proxy.rb')
-rw-r--r--lib/rack/body_proxy.rb11
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/rack/body_proxy.rb b/lib/rack/body_proxy.rb
index 95a74626..b35167c8 100644
--- a/lib/rack/body_proxy.rb
+++ b/lib/rack/body_proxy.rb
@@ -4,9 +4,14 @@ module Rack
       @body, @block, @closed = body, block, false
     end
 
-    def respond_to?(*args)
-      return false if args.first.to_s =~ /^to_ary$/
-      super or @body.respond_to?(*args)
+    def respond_to?(method_name)
+      case method_name
+      when :to_ary
+        return false
+      when String
+        return false if /^to_ary$/ =~ method_name
+      end
+      super or @body.respond_to?(method_name)
     end
 
     def close