about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-01-07 10:27:30 -0800
committerEric Wong <normalperson@yhbt.net>2011-01-07 13:43:16 -0800
commit58dbf0952b94b01d4a434fa880755f9a320c6103 (patch)
treef9fa4be59dc9384c6abb60fab9732155e13c2c4d
parent2d2416daa554dd530b5f2cfeffe3e0e31505c824 (diff)
downloadrainbows-58dbf0952b94b01d4a434fa880755f9a320c6103.tar.gz
Hash#[] is slightly slower on the miss case due to calling
Hash#default (but faster for the hit case, probably because it
is inlined in 1.9).
-rw-r--r--lib/rainbows/dev_fd_response.rb2
-rw-r--r--lib/rainbows/ev_core.rb2
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/rainbows/dev_fd_response.rb b/lib/rainbows/dev_fd_response.rb
index 2f7b1cf..60b595e 100644
--- a/lib/rainbows/dev_fd_response.rb
+++ b/lib/rainbows/dev_fd_response.rb
@@ -47,7 +47,7 @@ class Rainbows::DevFdResponse < Struct.new(:app)
       headers['Content-Length'] ||= st.size.to_s
       headers.delete('Transfer-Encoding')
     elsif st.pipe? || st.socket? # epoll-able things
-      unless headers['Content-Length']
+      unless headers.include?('Content-Length')
         if env['rainbows.autochunk']
           headers['Transfer-Encoding'] = 'chunked'
         else
diff --git a/lib/rainbows/ev_core.rb b/lib/rainbows/ev_core.rb
index a9fc41e..66d177f 100644
--- a/lib/rainbows/ev_core.rb
+++ b/lib/rainbows/ev_core.rb
@@ -50,7 +50,7 @@ module Rainbows::EvCore
   # returns whether to enable response chunking for autochunk models
   def stream_response_headers(status, headers, alive)
     headers = Rack::Utils::HeaderHash.new(headers)
-    if headers[Content_Length]
+    if headers.include?(Content_Length)
       rv = false
     else
       rv = !!(headers[Transfer_Encoding] =~ %r{\Achunked\z}i)