From 062473d6f44169d304711b8162ea688d0e9187f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20L?= Date: Fri, 19 Apr 2019 21:57:08 +0200 Subject: [PATCH] server: show error message if port is already in use --- src/WSServer.cpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/WSServer.cpp b/src/WSServer.cpp index b3dc834e..32f89c7a 100644 --- a/src/WSServer.cpp +++ b/src/WSServer.cpp @@ -69,7 +69,7 @@ WSServer::~WSServer() void WSServer::start(quint16 port) { if (_server.is_listening() && port == _serverPort) { - blog(LOG_INFO, "WebSocketsServer::start: server already on this port. no restart needed"); + blog(LOG_INFO, "WSServer::start: server already on this port. no restart needed"); return; } @@ -79,7 +79,19 @@ void WSServer::start(quint16 port) _serverPort = port; - _server.listen(_serverPort); + websocketpp::lib::error_code errorCode; + _server.listen(_serverPort, errorCode); + + if (errorCode) { + QString errorTitle = tr("OBSWebsocket.Server.StartFailed.Title"); + QString errorMessage = tr("OBSWebsocket.Server.StartFailed.Message").arg(_serverPort); + + QMainWindow* mainWindow = reinterpret_cast(obs_frontend_get_main_window()); + QMessageBox::warning(mainWindow, errorTitle, errorMessage); + + return; + } + _server.start_accept(); QtConcurrent::run([=]() {