]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
msg: clear message middle when clearing encoded message buffer 24289/head
authorYan, Zheng <zyan@redhat.com>
Wed, 26 Sep 2018 10:50:22 +0000 (18:50 +0800)
committerYan, Zheng <zyan@redhat.com>
Wed, 26 Sep 2018 10:58:16 +0000 (18:58 +0800)
Otherwise it may trigger ceph_assert(middle.length() == 0) in
Message::encode()

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
src/msg/async/Protocol.cc

index bcddc6989e52bd159983960248176f91f3bb543b..9d3fa503fbbfeb7651cb13065656e979ab57b815 100644 (file)
@@ -239,7 +239,7 @@ void ProtocolV1::send_message(Message *m) {
       (can_write == WriteStatus::NOWRITE || connection->get_features() != f)) {
     // ensure the correctness of message encoding
     bl.clear();
-    m->get_payload().clear();
+    m->clear_payload();
     ldout(cct, 5) << __func__ << " clear encoded buffer previous " << f
                   << " != " << connection->get_features() << dendl;
   }