diff --git a/lib/fog/aws/models/s3/objects.rb b/lib/fog/aws/models/s3/objects.rb index ef9ddf6a1..8d43ff511 100644 --- a/lib/fog/aws/models/s3/objects.rb +++ b/lib/fog/aws/models/s3/objects.rb @@ -15,7 +15,7 @@ module Fog def all(options = {}) collection = bucket.collection.get( bucket.name, - options.reject {|key, value| !['delimiter', 'marker', 'max-keys', 'prefix'].include?(key)} + options ) collection && collection.objects end diff --git a/lib/fog/aws/requests/s3/get_bucket.rb b/lib/fog/aws/requests/s3/get_bucket.rb index 6a6c74f05..9c733ec54 100644 --- a/lib/fog/aws/requests/s3/get_bucket.rb +++ b/lib/fog/aws/requests/s3/get_bucket.rb @@ -39,7 +39,7 @@ unless Fog.mocking? end query = '' for key, value in options - query << "#{key}=#{value};" + query << "#{key}=#{CGI.escape(value).gsub(/\+/, '%20')};" end query.chop! request({