From 1ff4ab5caa5970e2ad1090be0c931ef1d0c836f1 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Wed, 21 Mar 2018 14:32:53 -0400 Subject: [PATCH] common: update mClockPriorityQueue use of remove_by Signed-off-by: Casey Bodley --- src/common/mClockPriorityQueue.h | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/common/mClockPriorityQueue.h b/src/common/mClockPriorityQueue.h index 0871b9d7ee025..124273b398b62 100644 --- a/src/common/mClockPriorityQueue.h +++ b/src/common/mClockPriorityQueue.h @@ -244,7 +244,9 @@ namespace ceph { // to the list so items end up on list in front-to-back priority // order void remove_by_filter(std::function filter_accum) { - queue.remove_by_req_filter(filter_accum, true); + queue.remove_by_req_filter([&] (std::unique_ptr&& r) { + return filter_accum(std::move(*r)); + }, true); for (auto i = queue_front.rbegin(); i != queue_front.rend(); /* no-inc */) { if (filter_accum(std::move(i->second))) { @@ -270,8 +272,8 @@ namespace ceph { if (out) { queue.remove_by_client(k, true, - [&out] (T&& t) { - out->push_front(std::move(t)); + [&out] (std::unique_ptr&& t) { + out->push_front(std::move(*t)); }); } else { queue.remove_by_client(k, true); -- 2.39.5