|
@@ -297,7 +297,8 @@ enet_protocol_handle_connect (ENetHost * host, ENetProtocolHeader * header, ENet
|
|
peer = currentPeer;
|
|
peer = currentPeer;
|
|
}
|
|
}
|
|
else
|
|
else
|
|
- if (currentPeer -> address.host == host -> receivedAddress.host)
|
|
|
|
|
|
+ if (currentPeer -> state != ENET_PEER_STATE_CONNECTING &&
|
|
|
|
+ currentPeer -> address.host == host -> receivedAddress.host)
|
|
{
|
|
{
|
|
if (currentPeer -> address.port == host -> receivedAddress.port &&
|
|
if (currentPeer -> address.port == host -> receivedAddress.port &&
|
|
currentPeer -> connectID == command -> connect.connectID)
|
|
currentPeer -> connectID == command -> connect.connectID)
|
|
@@ -819,7 +820,7 @@ enet_protocol_handle_disconnect (ENetHost * host, ENetPeer * peer, const ENetPro
|
|
|
|
|
|
enet_peer_reset_queues (peer);
|
|
enet_peer_reset_queues (peer);
|
|
|
|
|
|
- if (peer -> state == ENET_PEER_STATE_CONNECTION_SUCCEEDED || peer -> state == ENET_PEER_STATE_DISCONNECTING)
|
|
|
|
|
|
+ if (peer -> state == ENET_PEER_STATE_CONNECTION_SUCCEEDED || peer -> state == ENET_PEER_STATE_DISCONNECTING || peer -> state == ENET_PEER_STATE_CONNECTING)
|
|
enet_protocol_dispatch_state (host, peer, ENET_PEER_STATE_ZOMBIE);
|
|
enet_protocol_dispatch_state (host, peer, ENET_PEER_STATE_ZOMBIE);
|
|
else
|
|
else
|
|
if (peer -> state != ENET_PEER_STATE_CONNECTED && peer -> state != ENET_PEER_STATE_DISCONNECT_LATER)
|
|
if (peer -> state != ENET_PEER_STATE_CONNECTED && peer -> state != ENET_PEER_STATE_DISCONNECT_LATER)
|