Tiny fixups (server conn info leak closed, log va leak closed, config dir optimized)

Commit amended for code style by Adam Honse <calcprogrammer1@gmail.com>
This commit is contained in:
k1-801
2021-04-28 01:45:27 +04:00
committed by Adam Honse
parent 33b840b2b9
commit abfb6ea22d
5 changed files with 34 additions and 11 deletions

View File

@@ -7,6 +7,8 @@
\*-----------------------------------------*/
#include "NetworkServer.h"
#include "ResourceManager.h"
#include "LogManager.h"
#include <cstring>
#ifndef WIN32
@@ -33,6 +35,17 @@ const char yes = 1;
using namespace std::chrono_literals;
NetworkClientInfo::~NetworkClientInfo()
{
if(client_sock != INVALID_SOCKET)
{
LOG_NOTICE("Closing server connection: %s", client_ip);
delete client_listen_thread;
shutdown(client_sock, SD_RECEIVE);
closesocket(client_sock);
}
}
NetworkServer::NetworkServer(std::vector<RGBController *>& control) : controllers(control)
{
port_num = OPENRGB_SDK_PORT;
@@ -280,17 +293,17 @@ void NetworkServer::StopServer()
server_online = false;
ServerClientsMutex.lock();
for(unsigned int client_idx = 0; client_idx < ServerClients.size(); client_idx++)
{
shutdown(ServerClients[client_idx]->client_sock, SD_RECEIVE);
closesocket(ServerClients[client_idx]->client_sock);
delete ServerClients[client_idx];
}
ServerClients.clear();
shutdown(server_sock, SD_RECEIVE);
closesocket(server_sock);
ServerClients.clear();
ServerClientsMutex.unlock();
if(ConnectionThread)
@@ -726,9 +739,6 @@ void NetworkServer::ListenThreadFunction(NetworkClientInfo * client_info)
}
listen_done:
printf("Server connection closed\r\n");
shutdown(client_info->client_sock, SD_RECEIVE);
closesocket(client_info->client_sock);
ServerClientsMutex.lock();
@@ -736,13 +746,14 @@ listen_done:
{
if(ServerClients[this_idx] == client_info)
{
delete client_info->client_listen_thread;
delete client_info;
ServerClients.erase(ServerClients.begin() + this_idx);
break;
}
}
client_info = nullptr;
ServerClientsMutex.unlock();
/*-------------------------------------------------*\