diff options
| author | DDuarte <dnpd.dd@gmail.com> | 2015-08-15 12:36:00 +0100 |
|---|---|---|
| committer | DDuarte <dnpd.dd@gmail.com> | 2015-08-15 12:36:19 +0100 |
| commit | 55acb20f6db06452b8e363f0cb86ff609b1bb3a6 (patch) | |
| tree | 2b316d2b773ff1f25d21c9da5f90264b7efbb031 /src | |
| parent | 7b491046e94af498b2428ebe7decf6353cbb61a2 (diff) | |
Core/Bnetserver: Catch and log an exception that happens when WorldserverListenPort is already used
Closes #15284
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/bnetserver/Realms/WorldListener.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/server/bnetserver/Realms/WorldListener.cpp b/src/server/bnetserver/Realms/WorldListener.cpp index bcfc5d685c1..d6a12453644 100644 --- a/src/server/bnetserver/Realms/WorldListener.cpp +++ b/src/server/bnetserver/Realms/WorldListener.cpp @@ -63,9 +63,18 @@ void WorldListener::Run() void WorldListener::HandleOpen() { - _worldSocket->bind(std::string("tcp://*:") + std::to_string(_worldListenPort)); + try + { + _worldSocket->bind(std::string("tcp://*:") + std::to_string(_worldListenPort)); + } + catch (zmqpp::zmq_internal_exception& ex) + { + TC_LOG_FATAL("server.ipc", "Could not bind to WorldserverListenPort %u. Exception: %s. Shutting down bnetserver.", _worldListenPort, ex.what()); + abort(); + } + _poller->add(*_worldSocket); - TC_LOG_INFO("server.ipc", "Listening on connections from worldservers..."); + TC_LOG_INFO("server.ipc", "Listening on connections from worldservers on port %u...", _worldListenPort); } void WorldListener::HandleClose() |
