Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/game/StarWorldServer.cpp
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2024-04-02 13:39:34 +1100
committerKae <80987908+Novaenia@users.noreply.github.com>2024-04-02 13:39:34 +1100
commit662f12da9624435b1850b424817879f12b7a30b2 (patch)
treed43af674451d2247b91b2e3b9fa3f3e4b4181423 /source/game/StarWorldServer.cpp
parent40698751e79d119e1ae37ea605b320961d6b597a (diff)
improvements to universe.sendPacket and world.sendPacket
adds necessary clientsMutex lock, and returns false if sending failed
Diffstat (limited to 'source/game/StarWorldServer.cpp')
-rw-r--r--source/game/StarWorldServer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/source/game/StarWorldServer.cpp b/source/game/StarWorldServer.cpp
index 95ec8c3..ec144da 100644
--- a/source/game/StarWorldServer.cpp
+++ b/source/game/StarWorldServer.cpp
@@ -544,9 +544,12 @@ List<PacketPtr> WorldServer::getOutgoingPackets(ConnectionId clientId) {
return std::move(clientInfo->outgoingPackets);
}
-void WorldServer::sendPacket(ConnectionId clientId, PacketPtr const& packet) {
- if (auto const& clientInfo = m_clientInfo.get(clientId))
- clientInfo->outgoingPackets.append(packet);
+bool WorldServer::sendPacket(ConnectionId clientId, PacketPtr const& packet) {
+ if (auto clientInfo = m_clientInfo.ptr(clientId)) {
+ clientInfo->get()->outgoingPackets.append(packet);
+ return true;
+ }
+ return false;
}
Maybe<Json> WorldServer::receiveMessage(ConnectionId fromConnection, String const& message, JsonArray const& args) {