(svn r21001) -Fix [FS#4170] (r20936): clients were not always notified of a player leaving the game

This commit is contained in:
rubidium
2010-10-20 11:58:34 +00:00
parent 2f0d3d69f6
commit abb9835f0a

View File

@@ -935,7 +935,7 @@ DEF_GAME_RECEIVE_COMMAND(Server, PACKET_CLIENT_ERROR)
FOR_ALL_CLIENT_SOCKETS(new_cs) { FOR_ALL_CLIENT_SOCKETS(new_cs) {
if (new_cs->status > STATUS_AUTHORIZED) { if (new_cs->status > STATUS_AUTHORIZED) {
this->SendErrorQuit(this->client_id, errorno); new_cs->SendErrorQuit(this->client_id, errorno);
} }
} }
@@ -961,8 +961,8 @@ DEF_GAME_RECEIVE_COMMAND(Server, PACKET_CLIENT_QUIT)
NetworkTextMessage(NETWORK_ACTION_LEAVE, CC_DEFAULT, false, client_name, NULL, STR_NETWORK_MESSAGE_CLIENT_LEAVING); NetworkTextMessage(NETWORK_ACTION_LEAVE, CC_DEFAULT, false, client_name, NULL, STR_NETWORK_MESSAGE_CLIENT_LEAVING);
FOR_ALL_CLIENT_SOCKETS(new_cs) { FOR_ALL_CLIENT_SOCKETS(new_cs) {
if (new_cs->status > STATUS_AUTHORIZED) { if (new_cs->status > STATUS_AUTHORIZED && new_cs != this) {
this->SendQuit(this->client_id); new_cs->SendQuit(this->client_id);
} }
} }