From 3899eee648966921d4cd3901d47cc6bdcbcfad6e Mon Sep 17 00:00:00 2001 From: Steve Pulec Date: Wed, 15 Mar 2017 22:53:27 -0400 Subject: [PATCH] Fix S3 filtering by unicode prefix. Closes #838 --- moto/s3/responses.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/moto/s3/responses.py b/moto/s3/responses.py index 9cc94ca03..954bf6706 100644 --- a/moto/s3/responses.py +++ b/moto/s3/responses.py @@ -233,6 +233,8 @@ class ResponseObject(_TemplateEnvironmentMixin): bucket = self.backend.get_bucket(bucket_name) prefix = querystring.get('prefix', [None])[0] + if prefix: + prefix = prefix.decode("utf-8") delimiter = querystring.get('delimiter', [None])[0] result_keys, result_folders = self.backend.prefix_query( bucket, prefix, delimiter) @@ -250,6 +252,8 @@ class ResponseObject(_TemplateEnvironmentMixin): bucket = self.backend.get_bucket(bucket_name) prefix = querystring.get('prefix', [None])[0] + if prefix: + prefix = prefix.decode("utf-8") delimiter = querystring.get('delimiter', [None])[0] result_keys, result_folders = self.backend.prefix_query( bucket, prefix, delimiter) @@ -278,7 +282,7 @@ class ResponseObject(_TemplateEnvironmentMixin): return template.render( bucket=bucket, - prefix=prefix or '', + prefix=prefix or b'', delimiter=delimiter, result_keys=result_keys, result_folders=result_folders,