diff --git a/include/opendht/dhtrunner.h b/include/opendht/dhtrunner.h index f2fc2a9e770dba245994f7862c085e5b042dce8a..92872ffed75c8f7c00a33defdf6004800641ae36 100644 --- a/include/opendht/dhtrunner.h +++ b/include/opendht/dhtrunner.h @@ -383,7 +383,7 @@ public: return; config_.proxy_server = proxy; config_.push_node_id = pushNodeId; - enableProxy(use_proxy); + enableProxy(use_proxy and not config_.proxy_server.empty()); } /** diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp index 0a0cd6ce3700b9f9c12120f4dec4fb362bd9e863..2f354a8efa9ced74ee8335a8c28bf5de7aeb2777 100644 --- a/src/dhtrunner.cpp +++ b/src/dhtrunner.cpp @@ -91,10 +91,8 @@ DhtRunner::run(const SockAddr& local4, const SockAddr& local6, DhtRunner::Config dht_ = std::unique_ptr<SecureDht>(new SecureDht(std::move(dht), config.dht_config)); #if OPENDHT_PROXY_CLIENT - if (!dht_via_proxy_) { - config_ = config; - enableProxy(use_proxy); - } + config_ = config; + enableProxy(not config_.proxy_server.empty()); #endif running = true;