]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
crimson/osd: fix memory leaks
authorXuehan Xu <xxhdx1985126@gmail.com>
Mon, 18 May 2020 02:20:14 +0000 (10:20 +0800)
committerXuehan Xu <xxhdx1985126@gmail.com>
Fri, 5 Jun 2020 10:44:18 +0000 (18:44 +0800)
Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
src/crimson/osd/osd.cc

index 759c2a0c5cb6f854611204b996d00d70d3e86bdf..b95ea472cc648db98ace00b5c74701918d170aa2 100644 (file)
@@ -1129,13 +1129,14 @@ seastar::future<> OSD::handle_peering_op(
 {
   const int from = m->get_source().num();
   logger().debug("handle_peering_op on {} from {}", m->get_spg(), from);
+  std::unique_ptr<PGPeeringEvent> evt(m->get_event());
   (void) shard_services.start_operation<RemotePeeringEvent>(
     *this,
     conn->get_shared(),
     shard_services,
     pg_shard_t{from, m->get_spg().shard},
     m->get_spg(),
-    std::move(*m->get_event()));
+    std::move(*evt));
   return seastar::now();
 }