diff --git a/src/dht_proxy_server.cpp b/src/dht_proxy_server.cpp index 0b77f96c5da2a5657e3e8abd346e2e774588d113..034dc5241f86daf99ead222c5965522ab02ee429 100644 --- a/src/dht_proxy_server.cpp +++ b/src/dht_proxy_server.cpp @@ -124,7 +124,10 @@ DhtProxyServer::DhtProxyServer(std::shared_ptr<DhtRunner> dht, in_port_t port , while (service_->is_up() and not stopListeners) { std::unique_lock<std::mutex> lock(schedulerLock_); auto next = scheduler_.run(); - schedulerCv_.wait_until(lock, next); + if (next == time_point::max()) + schedulerCv_.wait(lock); + else + schedulerCv_.wait_until(lock, next); } });