From 4a4b860ee7d7d45ad1e4e45c37fe134458ef2daa Mon Sep 17 00:00:00 2001 From: truelight Date: Fri, 14 Apr 2006 12:19:51 +0000 Subject: [PATCH] (svn r4413) -Fix: fixed a bug which pushed the client back to the main menu when a server is in the mainserver-list which sends out illegal signals. Many tnx to 'test' for finding and isolating the problem. -Fix: also specify the problem a bit better --- network_data.c | 2 +- network_udp.c | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/network_data.c b/network_data.c index ce008a86ab..43ed7c769a 100644 --- a/network_data.c +++ b/network_data.c @@ -125,7 +125,7 @@ static NetworkRecvStatus CloseConnection(NetworkClientState *cs) NetworkCloseClient(cs); // Clients drop back to the main menu - if (!_network_server) { + if (!_network_server && _networking) { _switch_mode = SM_MENU; _networking = false; _switch_mode_errorstr = STR_NETWORK_ERR_LOSTCONNECTION; diff --git a/network_udp.c b/network_udp.c index 7fed91b10f..5ee2bb6eae 100644 --- a/network_udp.c +++ b/network_udp.c @@ -328,8 +328,12 @@ static void NetworkHandleUDPPacket(Packet* p, struct sockaddr_in* client_addr) if (type < PACKET_UDP_END && _network_udp_packet[type] != NULL && !_udp_cs.quited) { _network_udp_packet[type](p, client_addr); - } else { - DEBUG(net, 0)("[NET][UDP] Received invalid packet type %d", type); + } else { + if (!_udp_cs.quited) { + DEBUG(net, 0)("[NET][UDP] Received invalid packet type %d", type); + } else { + DEBUG(net, 0)("[NET][UDP] Received illegal packet"); + } } }