File tree Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Expand file tree Collapse file tree 1 file changed +2
-2
lines changed Original file line number Diff line number Diff line change @@ -37,14 +37,14 @@ def net_http
37
37
38
38
def build_uri ( relative_uri , options )
39
39
# Need to encode in case of spaces (e.g. /1.0/kb/security/users/Mad Max/roles)
40
- encoded_relative_uri = URI ::DEFAULT_PARSER . escape ( relative_uri )
40
+ encoded_relative_uri = URI ::DEFAULT_PARSER . regexp [ :UNSAFE ] . match? ( relative_uri ) ? relative_uri : URI :: DEFAULT_PARSER . escape ( relative_uri )
41
41
if URI ( encoded_relative_uri ) . scheme . nil?
42
42
uri = ( options [ :base_uri ] || KillBillClient ::API . base_uri )
43
43
uri = URI . parse ( uri ) unless uri . is_a? ( URI )
44
44
# Note: make sure to keep the full path (if any) from URI::HTTP, for non-ROOT deployments
45
45
# See https://github.com/killbill/killbill/issues/221#issuecomment-151980263
46
46
base_path = uri . request_uri == '/' ? '' : uri . request_uri
47
- uri += ( base_path + URI :: DEFAULT_PARSER . escape ( relative_uri ) )
47
+ uri += ( base_path + encoded_relative_uri )
48
48
else
49
49
uri = encoded_relative_uri
50
50
uri = URI . parse ( uri ) unless uri . is_a? ( URI )
You can’t perform that action at this time.
0 commit comments