diff --git a/lib/rack/utils.rb b/lib/rack/utils.rb index 884e604..341bf2b 100644 --- a/lib/rack/utils.rb +++ b/lib/rack/utils.rb @@ -276,7 +276,13 @@ module Rack end def [](k) - super(@names[k] ||= @names[k.downcase]) + super( + if @names.key?(k) + @names[k] + elsif @names.key?(k_downcase = k.downcase) + @names[k] = @names[k_downcase] + end + ) end def []=(k, v)