diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-08-25 20:28:50 +1000 |
---|---|---|
committer | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-08-25 20:28:50 +1000 |
commit | e3462c3c697210e42b867e89f9e3f48bd8c64a4d (patch) | |
tree | ae297f6d55c5e86fbd4af871e97e5d434f053a36 /source/game/StarUniverseServer.cpp | |
parent | f0a08aea2213197a2b7e6b6784ec34320aa85abb (diff) |
Update StarUniverseServer.cpp
Diffstat (limited to 'source/game/StarUniverseServer.cpp')
-rw-r--r-- | source/game/StarUniverseServer.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/game/StarUniverseServer.cpp b/source/game/StarUniverseServer.cpp index 690f1c6..28f7862 100644 --- a/source/game/StarUniverseServer.cpp +++ b/source/game/StarUniverseServer.cpp @@ -1782,8 +1782,12 @@ void UniverseServer::acceptConnection(UniverseConnection connection, Maybe<HostA clientFlyShip(clientId, clientContext->shipCoordinate().location(), clientContext->shipLocation()); Logger::info("UniverseServer: Client {} connected", clientContext->descriptiveName()); + ReadLocker m_clientsReadLocker(m_clientsLock); auto players = static_cast<uint16_t>(m_clients.size()); - for (auto clientId : m_clients.keys()) { + auto clients = m_clients.keys(); + m_clientsReadLocker.unlock(); + + for (auto clientId : clients) { m_connectionServer->sendPackets(clientId, { make_shared<ServerInfoPacket>(players, static_cast<uint16_t>(m_maxPlayers)) }); |