mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-27 22:49:25 +02:00
Replace few more pointers with references, remove manual delete call
This commit is contained in:
@@ -457,20 +457,20 @@ void CGameHandler::handleClientDisconnection(std::shared_ptr<CConnection> c)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGameHandler::handleReceivedPack(CPackForServer * pack)
|
void CGameHandler::handleReceivedPack(CPackForServer & pack)
|
||||||
{
|
{
|
||||||
//prepare struct informing that action was applied
|
//prepare struct informing that action was applied
|
||||||
auto sendPackageResponse = [&](bool successfullyApplied)
|
auto sendPackageResponse = [&](bool successfullyApplied)
|
||||||
{
|
{
|
||||||
PackageApplied applied;
|
PackageApplied applied;
|
||||||
applied.player = pack->player;
|
applied.player = pack.player;
|
||||||
applied.result = successfullyApplied;
|
applied.result = successfullyApplied;
|
||||||
applied.packType = CTypeList::getInstance().getTypeID(pack);
|
applied.packType = CTypeList::getInstance().getTypeID(&pack);
|
||||||
applied.requestID = pack->requestID;
|
applied.requestID = pack.requestID;
|
||||||
pack->c->sendPack(applied);
|
pack.c->sendPack(applied);
|
||||||
};
|
};
|
||||||
|
|
||||||
if(isBlockedByQueries(pack, pack->player))
|
if(isBlockedByQueries(&pack, pack.player))
|
||||||
{
|
{
|
||||||
sendPackageResponse(false);
|
sendPackageResponse(false);
|
||||||
}
|
}
|
||||||
@@ -480,7 +480,7 @@ void CGameHandler::handleReceivedPack(CPackForServer * pack)
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
ApplyGhNetPackVisitor applier(*this);
|
ApplyGhNetPackVisitor applier(*this);
|
||||||
pack->visit(applier);
|
pack.visit(applier);
|
||||||
result = applier.getResult();
|
result = applier.getResult();
|
||||||
}
|
}
|
||||||
catch(ExceptionNotAllowedAction &)
|
catch(ExceptionNotAllowedAction &)
|
||||||
@@ -489,14 +489,13 @@ void CGameHandler::handleReceivedPack(CPackForServer * pack)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(result)
|
if(result)
|
||||||
logGlobal->trace("Message %s successfully applied!", typeid(*pack).name());
|
logGlobal->trace("Message %s successfully applied!", typeid(pack).name());
|
||||||
else
|
else
|
||||||
complain((boost::format("Got false in applying %s... that request must have been fishy!")
|
complain((boost::format("Got false in applying %s... that request must have been fishy!")
|
||||||
% typeid(*pack).name()).str());
|
% typeid(pack).name()).str());
|
||||||
|
|
||||||
sendPackageResponse(true);
|
sendPackageResponse(true);
|
||||||
}
|
}
|
||||||
vstd::clear_pointer(pack);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CGameHandler::CGameHandler(CVCMIServer * lobby)
|
CGameHandler::CGameHandler(CVCMIServer * lobby)
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ public:
|
|||||||
|
|
||||||
void init(StartInfo *si, Load::ProgressAccumulator & progressTracking);
|
void init(StartInfo *si, Load::ProgressAccumulator & progressTracking);
|
||||||
void handleClientDisconnection(std::shared_ptr<CConnection> c);
|
void handleClientDisconnection(std::shared_ptr<CConnection> c);
|
||||||
void handleReceivedPack(CPackForServer * pack);
|
void handleReceivedPack(CPackForServer & pack);
|
||||||
bool hasPlayerAt(PlayerColor player, std::shared_ptr<CConnection> c) const;
|
bool hasPlayerAt(PlayerColor player, std::shared_ptr<CConnection> c) const;
|
||||||
bool hasBothPlayersAtSameConnection(PlayerColor left, PlayerColor right) const;
|
bool hasBothPlayersAtSameConnection(PlayerColor left, PlayerColor right) const;
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public:
|
|||||||
void visitForServer(CPackForServer & serverPack) override
|
void visitForServer(CPackForServer & serverPack) override
|
||||||
{
|
{
|
||||||
if (gh)
|
if (gh)
|
||||||
gh->handleReceivedPack(&serverPack);
|
gh->handleReceivedPack(serverPack);
|
||||||
else
|
else
|
||||||
logNetwork->error("Received pack for game server while in lobby!");
|
logNetwork->error("Received pack for game server while in lobby!");
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user