The code mistakenly uses the current marker to figure out how to skip
past a pseudo-directory. This could allow for some entries in a bucket
to be skipped. The code should have used the current pseudo-directory
to determine what to skip past.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
next_marker = prefix_key;
(*common_prefixes)[prefix_key] = true;
- int marker_delim_pos = cur_marker.name.find(
- params.delim, cur_prefix.size());
-
- skip_after_delim = cur_marker.name.substr(0, marker_delim_pos);
+ skip_after_delim = obj.name.substr(0, delim_pos);
skip_after_delim.append(after_delim_s);
ldout(cct, 20) << "skip_after_delim=" << skip_after_delim << dendl;