merge revision(s) 55563: [Backport #12498]

* lib/uri/mailto.rb (initialize): RFC3986_Parser#split sets opaque
	  only if the URI has path-rootless, not path-empty.
	  [ruby-core:76055] [Bug #12498]
	  patched by Chris Heisterkamp <cheister@squareup.com>


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nagachika 2016-08-16 02:48:59 +00:00
parent 55992aa430
commit eed566debe
4 changed files with 17 additions and 5 deletions

View file

@ -1,3 +1,10 @@
Tue Aug 16 11:46:07 2016 NARUSE, Yui <naruse@ruby-lang.org>
* lib/uri/mailto.rb (initialize): RFC3986_Parser#split sets opaque
only if the URI has path-rootless, not path-empty.
[ruby-core:76055] [Bug #12498]
patched by Chris Heisterkamp <cheister@squareup.com>
Tue Aug 16 04:57:28 2016 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/http/generic_request.rb (write_header): A Request-Line must

View file

@ -136,6 +136,9 @@ module URI
@to = nil
@headers = []
# The RFC3986 parser does not normally populate opaque
@opaque = "?#{@query}" if @query && !@opaque
unless @opaque
raise InvalidComponentError,
"missing opaque part for mailto URL"

View file

@ -112,13 +112,15 @@ class TestMailTo < Test::Unit::TestCase
bad << ["foo@example.jp?subject=1+1=2", []]
ok.each do |x|
assert_equal(x[0],
@u.build(x[1]).to_s)
assert_equal(x[0],
@u.build(x[2]).to_s)
assert_equal(x[0], URI.parse(x[0]).to_s)
assert_equal(x[0], @u.build(x[1]).to_s)
assert_equal(x[0], @u.build(x[2]).to_s)
end
bad.each do |x|
assert_raise(URI::InvalidURIError) {
URI.parse(x)
}
assert_raise(URI::InvalidComponentError) {
@u.build(x)
}

View file

@ -1,6 +1,6 @@
#define RUBY_VERSION "2.3.2"
#define RUBY_RELEASE_DATE "2016-08-16"
#define RUBY_PATCHLEVEL 163
#define RUBY_PATCHLEVEL 164
#define RUBY_RELEASE_YEAR 2016
#define RUBY_RELEASE_MONTH 8