diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp index e262870883e1c65e7f7a5c55d3fb34c53397072f..b7f1041ddb4a0dd25663e26a5f1faf4e3795b0ac 100644 --- a/src/dhtrunner.cpp +++ b/src/dhtrunner.cpp @@ -465,12 +465,14 @@ DhtRunner::getNodesStats(sa_family_t af) const NodeInfo DhtRunner::getNodeInfo() const { std::lock_guard<std::mutex> lck(dht_mtx); - NodeInfo info; - info.id = getId(); - info.node_id = getNodeId(); + NodeInfo info {}; + if (auto dht = activeDht()) { + info.id = dht->getId(); + info.node_id = dht->getNodeId(); + info.ipv4 = dht->getNodesStats(AF_INET); + info.ipv6 = dht->getNodesStats(AF_INET6); + } info.ongoing_ops = ongoing_ops; - info.ipv4 = dht_->getNodesStats(AF_INET); - info.ipv6 = dht_->getNodesStats(AF_INET6); return info; }