From a56bf3f115703d4fa8214dc956385844c7578532 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Wed, 12 Oct 2016 13:04:44 -0400 Subject: [PATCH] dhtrunner: handle null callback in pingNode --- src/dhtrunner.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp index 8a39fee2..f4b7c655 100644 --- a/src/dhtrunner.cpp +++ b/src/dhtrunner.cpp @@ -684,15 +684,15 @@ DhtRunner::bootstrap(const std::vector<std::pair<sockaddr_storage, socklen_t>>& { std::lock_guard<std::mutex> lck(storage_mtx); pending_ops_prio.emplace([=](SecureDht& dht) mutable { - auto rem = std::make_shared<std::pair<size_t, bool>>(nodes.size(), false); + auto rem = cb ? std::make_shared<std::pair<size_t, bool>>(nodes.size(), false) : nullptr; for (auto& node : nodes) - dht.pingNode((sockaddr*)&node.first, node.second, [rem,cb](bool ok) { + dht.pingNode((sockaddr*)&node.first, node.second, cb ? [rem,cb](bool ok) { auto& r = *rem; r.first--; r.second |= ok; if (not r.first) cb(r.second); - }); + } : DoneCallbackSimple{}); }); cv.notify_all(); } -- GitLab