diff --git a/lib/net/http/response.rb b/lib/net/http/response.rb index 43a4a698..e7102026 100644 --- a/lib/net/http/response.rb +++ b/lib/net/http/response.rb @@ -463,7 +463,7 @@ def check_bom(str) def scanning_meta(str) require 'strscan' ss = StringScanner.new(str) - if ss.scan_until(/' value = '' else - value = ss.scan(/[^\t\n\f\r >]+/) - value.downcase! + value = ss.scan(/[^\t\n\f\r >]+/)&.downcase end [name, value] end diff --git a/test/net/http/test_httpresponse.rb b/test/net/http/test_httpresponse.rb index 99a94674..d4ae5203 100644 --- a/test/net/http/test_httpresponse.rb +++ b/test/net/http/test_httpresponse.rb @@ -242,7 +242,31 @@ def test_read_body_body_encoding_true_with_iso8859_1_meta_charset end def test_read_body_body_encoding_true_with_utf8_meta_content_charset - res_body = "hello\u1234" + res_body = "hello" + io = dummy_io(<