From b583692b9725128ec44a7be067f578ca3a7128d9 Mon Sep 17 00:00:00 2001 From: Lee Salzman Date: Sat, 5 Jun 2010 20:37:19 +0000 Subject: [PATCH] fragment sending fix git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@5144 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/enet/ChangeLog | 4 ++-- source/enet/include/enet/enet.h | 2 ++ source/enet/peer.c | 4 ++-- source/enet/protocol.c | 3 +++ source/lib/enet.lib | Bin 42412 -> 42864 bytes 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/source/enet/ChangeLog b/source/enet/ChangeLog index 6145b690..45f14db6 100644 --- a/source/enet/ChangeLog +++ b/source/enet/ChangeLog @@ -1,4 +1,4 @@ -ENet 1.3.0 (May 24, 2010): +ENet 1.3.0 (June 5, 2010): * enet_host_create() now requires the channel limit to be specified as a parameter @@ -15,7 +15,7 @@ Caveats: This version is not protocol compatible with the 1.2 series or earlier. The enet_host_connect and enet_host_create API functions require supplying additional parameters. -ENet 1.2.2 (May 20, 2010): +ENet 1.2.2 (June 5, 2010): * checksum functionality is now enabled by setting a checksum callback inside ENetHost instead of being a configure script option diff --git a/source/enet/include/enet/enet.h b/source/enet/include/enet/enet.h index 9f40793a..425e7531 100755 --- a/source/enet/include/enet/enet.h +++ b/source/enet/include/enet/enet.h @@ -522,6 +522,8 @@ extern void enet_peer_setup_outgoing_command (ENetPeer *, ENetO extern ENetOutgoingCommand * enet_peer_queue_outgoing_command (ENetPeer *, const ENetProtocol *, ENetPacket *, enet_uint32, enet_uint16); extern ENetIncomingCommand * enet_peer_queue_incoming_command (ENetPeer *, const ENetProtocol *, ENetPacket *, enet_uint32); extern ENetAcknowledgement * enet_peer_queue_acknowledgement (ENetPeer *, const ENetProtocol *, enet_uint16); +extern void enet_peer_dispatch_incoming_unreliable_commands (ENetPeer *, ENetChannel *); +extern void enet_peer_dispatch_incoming_reliable_commands (ENetPeer *, ENetChannel *); ENET_API void * enet_range_coder_create (void); ENET_API void enet_range_coder_destroy (void *); diff --git a/source/enet/peer.c b/source/enet/peer.c index d73625e7..d778ce1d 100755 --- a/source/enet/peer.c +++ b/source/enet/peer.c @@ -585,7 +585,7 @@ enet_peer_queue_outgoing_command (ENetPeer * peer, const ENetProtocol * command, return outgoingCommand; } -static void +void enet_peer_dispatch_incoming_unreliable_commands (ENetPeer * peer, ENetChannel * channel) { ENetListIterator currentCommand; @@ -614,7 +614,7 @@ enet_peer_dispatch_incoming_unreliable_commands (ENetPeer * peer, ENetChannel * } } -static void +void enet_peer_dispatch_incoming_reliable_commands (ENetPeer * peer, ENetChannel * channel) { ENetListIterator currentCommand; diff --git a/source/enet/protocol.c b/source/enet/protocol.c index b4d13b8b..8e26dfb2 100755 --- a/source/enet/protocol.c +++ b/source/enet/protocol.c @@ -593,6 +593,9 @@ enet_protocol_handle_send_fragment (ENetHost * host, ENetPeer * peer, const ENet memcpy (startCommand -> packet -> data + fragmentOffset, (enet_uint8 *) command + sizeof (ENetProtocolSendFragment), fragmentLength); + + if (startCommand -> fragmentsRemaining <= 0) + enet_peer_dispatch_incoming_reliable_commands (peer, channel); } return 0; diff --git a/source/lib/enet.lib b/source/lib/enet.lib index ea7e4cf8ce4d7d8b6edcf7e154909a093b5d3697..235fdf0df609abb121c1de7c49ee810f3cc8d830 100644 GIT binary patch delta 6233 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 delta 5881 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