diff --git a/ChangeLog b/ChangeLog index 5365351f10..1d16fff85b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Thu Feb 15 16:25:54 2007 Akinori MUSHA + + * lib/uri/generic.rb (URI::Generic::userinfo): Considering how + `scheme://user:@...', `scheme://:password@...' and + `scheme://:@...' are parsed, an empty user name or password + should be allowed and represented as it is. + Thu Feb 15 01:52:53 2007 Koichi Sasada * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to diff --git a/lib/uri/generic.rb b/lib/uri/generic.rb index cae6169190..2b66adeb93 100644 --- a/lib/uri/generic.rb +++ b/lib/uri/generic.rb @@ -304,19 +304,19 @@ module URI end check_userinfo(*userinfo) set_userinfo(*userinfo) - userinfo + # returns userinfo end def user=(user) check_user(user) set_user(user) - user + # returns user end def password=(password) check_password(password) set_password(password) - password + # returns password end def set_userinfo(user, password = nil) @@ -338,7 +338,7 @@ module URI def set_password(v) @password = v - v + # returns v end protected :set_password @@ -356,9 +356,9 @@ module URI private :escape_userpass def userinfo - if @user.nil? or @user.empty? + if @user.nil? nil - elsif @password.nil? or @password.empty? + elsif @password.nil? @user else @user + ':' + @password