From ae91f8bd551df00fb01c18e508d8e8ad4f552f40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Mon, 8 Apr 2019 15:36:24 -0400 Subject: [PATCH] dhtrunner: default-initialize tokens --- src/dhtrunner.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp index a37b81cb..6f15a2d9 100644 --- a/src/dhtrunner.cpp +++ b/src/dhtrunner.cpp @@ -33,10 +33,10 @@ constexpr std::chrono::seconds DhtRunner::BOOTSTRAP_PERIOD; static constexpr size_t RX_QUEUE_MAX_SIZE = 1024 * 16; struct DhtRunner::Listener { - size_t tokenClassicDht; - size_t tokenProxyDht; + size_t tokenClassicDht {0}; + size_t tokenProxyDht {0}; ValueCallback gcb; - InfoHash hash; + InfoHash hash {}; Value::Filter f; Where w; }; @@ -661,7 +661,7 @@ DhtRunner::listen(InfoHash hash, ValueCallback vcb, Value::Filter f, Where w) pending_ops.emplace([=](SecureDht& dht) mutable { #ifdef OPENDHT_PROXY_CLIENT auto tokenbGlobal = listener_token_++; - Listener listener {}; + auto& listener = listeners_[tokenbGlobal]; listener.hash = hash; listener.f = std::move(f); listener.w = std::move(w); @@ -676,7 +676,6 @@ DhtRunner::listen(InfoHash hash, ValueCallback vcb, Value::Filter f, Where w) listener.tokenProxyDht = dht.listen(hash, listener.gcb, listener.f, listener.w); else listener.tokenClassicDht = dht.listen(hash, listener.gcb, listener.f, listener.w); - listeners_.emplace(tokenbGlobal, std::move(listener)); ret_token->set_value(tokenbGlobal); #else ret_token->set_value(dht.listen(hash, std::move(vcb), std::move(f), std::move(w))); -- GitLab