diff --git a/server/server.cpp b/server/server.cpp index 2ee246b..fdedc3a 100644 --- a/server/server.cpp +++ b/server/server.cpp @@ -25,18 +25,23 @@ bool CTcpServer::start(unsigned short port) { asio::ip::tcp::resolver resolver(io_context_); asio::ip::tcp::resolver::query query(asio::ip::host_name(), ""); - asio::ip::tcp::resolver::iterator it = resolver.resolve(query); - mpdebug("Here are the local IP addresses you may use."); - mpdebug("==========================================="); - int i = 1; - while (it != asio::ip::tcp::resolver::iterator()) { - asio::ip::address addr = it->endpoint().address(); - mpinfo("({}){}", i, addr.to_string()); - ++it; - ++i; + try { + auto it = resolver.resolve(query); + mpdebug("Here are the local IP addresses you may use."); + mpdebug("==========================================="); + int i = 1; + while (it != asio::ip::tcp::resolver::iterator()) { + asio::ip::address addr = it->endpoint().address(); + mpinfo("({}){}", i, addr.to_string()); + ++it; + ++i; + } + mpdebug("==========================================="); + } catch (const std::exception& e) { + mpwarn("{}", e.what()); + mpinfo("will not show local IP."); } - mpdebug("==========================================="); asio::ip::tcp::endpoint endpoint(asio::ip::tcp::v4(), port); try {