diff --git a/src/dht.cpp b/src/dht.cpp index 0a9d3cfbf17df68cbb3d1a2e500792d360397cf5..9a9271f5f273458a8b2cb40532d7359c68905c41 100644 --- a/src/dht.cpp +++ b/src/dht.cpp @@ -864,7 +864,7 @@ Dht::Search::insertNode(std::shared_ptr<Node> node, time_point now, const Blob& [=](const SearchNode& n) { return n.node->isGood(now) or n.candidate; } ); if (farthest_not_expired_node != nodes.rend()) { - nodes.erase(farthest_not_expired_node.base()); + nodes.erase(std::prev(farthest_not_expired_node.base())); } // else, all nodes are expired. } expired = false;