summaryrefslogtreecommitdiff
path: root/src/network/network_client.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2010-11-30 14:18:20 +0000
committerrubidium <rubidium@openttd.org>2010-11-30 14:18:20 +0000
commit31c8ab0ed895b8a67a0d6720f92b7a0e77956454 (patch)
tree1a089c1e156791a4cd5eeb18c380ef34e692a8ab /src/network/network_client.cpp
parent21cf75951c77e2d73ba2a564e2b7110c5c058747 (diff)
downloadopenttd-31c8ab0ed895b8a67a0d6720f92b7a0e77956454.tar.xz
(svn r21361) -Change: make sure the client is listening, or rather receiving, our frames
Diffstat (limited to 'src/network/network_client.cpp')
-rw-r--r--src/network/network_client.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/network/network_client.cpp b/src/network/network_client.cpp
index 07b1cfb98..7d1e7f669 100644
--- a/src/network/network_client.cpp
+++ b/src/network/network_client.cpp
@@ -349,6 +349,7 @@ NetworkRecvStatus ClientNetworkGameSocketHandler::SendAck()
Packet *p = new Packet(PACKET_CLIENT_ACK);
p->Send_uint32(_frame_counter);
+ p->Send_uint8 (my_client->token);
my_client->SendPacket(p);
return NETWORK_RECV_STATUS_OKAY;
}
@@ -798,7 +799,7 @@ DEF_GAME_RECEIVE_COMMAND(Client, PACKET_SERVER_FRAME)
#ifdef ENABLE_NETWORK_SYNC_EVERY_FRAME
/* Test if the server supports this option
* and if we are at the frame the server is */
- if (p->pos < p->size) {
+ if (p->pos + 1 < p->size) {
_sync_frame = _frame_counter_server;
_sync_seed_1 = p->Recv_uint32();
#ifdef NETWORK_SEND_DOUBLE_SEED
@@ -806,6 +807,9 @@ DEF_GAME_RECEIVE_COMMAND(Client, PACKET_SERVER_FRAME)
#endif
}
#endif
+ /* Receive the token. */
+ if (p->pos != p->size) this->token = p->Recv_uint8();
+
DEBUG(net, 5, "Received FRAME %d", _frame_counter_server);
/* Let the server know that we received this frame correctly