diff options
author | Yehuda Sadeh <yehuda@inktank.com> | 2013-06-06 21:47:21 -0700 |
---|---|---|
committer | Greg Farnum <greg@inktank.com> | 2013-06-07 14:09:00 -0700 |
commit | 3ea45533c18174cb49af52024dae27533971fa01 (patch) | |
tree | f02e71604910d21bb31c98900d42229d309d45f0 | |
parent | 4ee638cc3b1d74e678a3f78b3a57baf57a5d407c (diff) | |
download | ceph-3ea45533c18174cb49af52024dae27533971fa01.tar.gz |
rgw: fix get_resource_mgr() to correctly identify resource
Fixes: #5262
The original test was not comparing the correct string, ended up
with the effect of just checking the substring of the uri to match
the resource.
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
(cherry picked from commit 8d55b87f95d59dbfcfd0799c4601ca37ebb025f5)
-rw-r--r-- | src/rgw/rgw_rest.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rgw/rgw_rest.cc b/src/rgw/rgw_rest.cc index ab3927e7a62..72a9ba3b6cf 100644 --- a/src/rgw/rgw_rest.cc +++ b/src/rgw/rgw_rest.cc @@ -1096,8 +1096,8 @@ RGWRESTMgr *RGWRESTMgr::get_resource_mgr(struct req_state *s, const string& uri) for (iter = resources_by_size.rbegin(); iter != resources_by_size.rend(); ++iter) { string& resource = iter->second; if (uri.compare(0, iter->first, resource) == 0 && - (resource.size() == iter->first || - resource[iter->first] == '/')) { + (uri.size() == iter->first || + uri[iter->first] == '/')) { string suffix = uri.substr(iter->first); return resource_mgrs[resource]->get_resource_mgr(s, suffix); } |