Fixed sender again, as it did not work when sending errors.

This commit is contained in:
lotodore
2007-10-28 15:06:57 +00:00
parent e951bda1db
commit cdea81b2ba
12 changed files with 104 additions and 148 deletions
+3 -9
View File
@@ -42,12 +42,6 @@ public:
ClientSenderCallback(ClientThread &client) : m_client(client) {}
virtual ~ClientSenderCallback() {}
virtual bool GetSocketForSession(SessionId session, SOCKET &outSocket)
{
assert(session == m_client.GetContext().GetSessionId());
outSocket = m_client.GetContext().GetSocket();
return true;
}
virtual void SignalNetError(SessionId /*session*/, int errorID, int osErrorID)
{
// Just signal the error.
@@ -374,7 +368,7 @@ ClientThread::SendPacketLoop()
while (i != end)
{
GetSender().Send(GetContext().GetSessionId(), *i);
GetSender().Send(GetContext().GetSessionData(), *i);
++i;
}
m_outPacketList.clear();
@@ -405,7 +399,7 @@ ClientThread::RequestPlayerInfo(unsigned id)
NetPacketRetrievePlayerInfo::Data reqData;
reqData.playerId = id;
static_cast<NetPacketRetrievePlayerInfo *>(req.get())->SetData(reqData);
GetSender().Send(GetContext().GetSessionId(), req);
GetSender().Send(GetContext().GetSessionData(), req);
m_playerInfoRequestList.push_back(id);
}
@@ -443,7 +437,7 @@ ClientThread::SetPlayerInfo(unsigned id, const PlayerInfo &info, bool retrieveAv
retrieveAvatarData.requestId = id;
retrieveAvatarData.avatar = info.avatar;
static_cast<NetPacketRetrieveAvatar *>(retrieveAvatar.get())->SetData(retrieveAvatarData);
GetSender().Send(GetContext().GetSessionId(), retrieveAvatar);
GetSender().Send(GetContext().GetSessionData(), retrieveAvatar);
// Insert empty value in list to synchronize waiting.
m_tempAvatarMap[id] = boost::shared_ptr<AvatarData>();