Merge pull request #19986 from tchaikov/wip-denc-size-t-featured

denc: should check element's type not 'size_t'

Reviewed-by: Adam Emerson <aemerson@redhat.com>
This commit is contained in:
Sage Weil 2018-01-22 17:51:34 -06:00 committed by GitHub
commit f9e02d51d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1134,7 +1134,7 @@ public:
static std::enable_if_t<denc_traits<U>::featured>
bound_encode(const container& s, size_t& p, uint64_t f) {
ceph::for_each(s, [&p, f] (const auto& e) {
if constexpr (denc_traits<std::decay_t<decltype(p)>>::featured) {
if constexpr (denc_traits<std::decay_t<decltype(e)>>::featured) {
denc(e, p, f);
} else {
denc(e, p);
@ -1153,7 +1153,7 @@ public:
static std::enable_if_t<denc_traits<U>::featured>
encode(const container& s, buffer::list::contiguous_appender& p, uint64_t f) {
ceph::for_each(s, [&p, f] (const auto& e) {
if constexpr (denc_traits<std::decay_t<decltype(p)>>::featured) {
if constexpr (denc_traits<std::decay_t<decltype(e)>>::featured) {
denc(e, p, f);
} else {
denc(e, p);