]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: url_decode values from X-Object-Manifest during GET on Swift DLO. 5617/head
authorRadoslaw Zarzynski <rzarzynski@mirantis.com>
Wed, 19 Aug 2015 18:32:39 +0000 (20:32 +0200)
committerRadoslaw Zarzynski <rzarzynski@mirantis.com>
Thu, 20 Aug 2015 09:25:16 +0000 (11:25 +0200)
Fixes: #12728
Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
src/rgw/rgw_op.cc

index c3827714d0f1e9e8f10722774b53de420a54f7a2..9094e9d7c1e2953ab5aae69925dcc1449288a256 100644 (file)
@@ -808,8 +808,13 @@ int RGWGetObj::handle_user_manifest(const char *prefix)
   if (pos < 0)
     return -EINVAL;
 
-  string bucket_name = prefix_str.substr(0, pos);
-  string obj_prefix = prefix_str.substr(pos + 1);
+  string bucket_name_raw, bucket_name;
+  bucket_name_raw = prefix_str.substr(0, pos);
+  url_decode(bucket_name_raw, bucket_name);
+
+  string obj_prefix_raw, obj_prefix;
+  obj_prefix_raw = prefix_str.substr(pos + 1);
+  url_decode(obj_prefix_raw, obj_prefix);
 
   rgw_bucket bucket;