From: Tianshan Qu Date: Tue, 21 May 2019 10:50:06 +0000 (+0800) Subject: rgw: fix list bucket with start maker and delimiter '/' will miss next object with... X-Git-Tag: v15.1.0~2281^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=43b5264c7d61ae3be56d68f131b544edee307a46;p=ceph.git rgw: fix list bucket with start maker and delimiter '/' will miss next object with char '0' '/' + 1 = '0', and the start marker will be skipped, so it will miss the '0' object. Fixes: http://tracker.ceph.com/issues/39989 Signed-off-by: Tianshan Qu --- diff --git a/src/rgw/rgw_rados.cc b/src/rgw/rgw_rados.cc index 0a2ead992b6..7487b68be71 100644 --- a/src/rgw/rgw_rados.cc +++ b/src/rgw/rgw_rados.cc @@ -2398,15 +2398,8 @@ int RGWRados::Bucket::update_bucket_id(const string& new_bucket_id) static inline std::string after_delim(std::string_view delim) { // assert: ! delim.empty() - unsigned char e = delim.back(); - delim.remove_suffix(1); std::string result{delim.data(), delim.length()}; - if (uint8_t(e) < 255) { - result += char(++e); - } else { - result += e; - result += char(255); - } + result += char(255); return result; }