diff options
Diffstat (limited to 'actionpack/lib/action_controller/cgi_process.rb')
-rw-r--r-- | actionpack/lib/action_controller/cgi_process.rb | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/actionpack/lib/action_controller/cgi_process.rb b/actionpack/lib/action_controller/cgi_process.rb index 1b36274dd9..d1d8a660c7 100644 --- a/actionpack/lib/action_controller/cgi_process.rb +++ b/actionpack/lib/action_controller/cgi_process.rb @@ -52,19 +52,19 @@ module ActionController #:nodoc: end def query_string - return @cgi.query_string unless @cgi.query_string.nil? || @cgi.query_string.empty? - unless env['REQUEST_URI'].nil? - parts = env['REQUEST_URI'].split('?') + if (qs = @cgi.query_string) && !qs.empty? + qs + elsif uri = env['REQUEST_URI'] + parts = uri.split('?') + parts.shift + parts.join('?') else - return env['QUERY_STRING'] || '' - end - parts.shift - return parts.join('?') + env['QUERY_STRING'] || '' + end end def query_parameters - qs = self.query_string - qs.empty? ? {} : CGIMethods.parse_query_parameters(query_string) + (qs = self.query_string).empty? ? {} : CGIMethods.parse_query_parameters(qs) end def request_parameters |