A dumb string comparison will do here, so there's no point
in paying the memory and CPU cost of a regexp match when we
already extracted the suffix from a header key.
---
 lib/yahns/proxy_pass.rb | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/yahns/proxy_pass.rb b/lib/yahns/proxy_pass.rb
index 48a61af..1b8eed7 100644
--- a/lib/yahns/proxy_pass.rb
+++ b/lib/yahns/proxy_pass.rb
@@ -223,7 +223,8 @@ class Yahns::ProxyPass # :nodoc:
       # header in the request
       next if /\A(?:VERSION|CONNECTION|KEEP_ALIVE|X_FORWARDED_FOR|TRAILER)/ =~
          key
-      chunked = true if %r{\ATRANSFER_ENCODING} =~ key && val =~ /\bchunked\b/i
+      'TRANSFER_ENCODING'.freeze == key && val =~ /\bchunked\b/i and
+        chunked = true
       key.tr!('_'.freeze, '-'.freeze)
       req << "#{key}: #{val}\r\n"
     end
-- 
EW

Reply via email to