mirror of https://github.com/OpenTTD/OpenTTD
(svn r2591) Codechange: [network] Cleanup NetworkHandleCommandQueue
parent
bd974bb443
commit
11d9f50115
|
@ -1485,27 +1485,13 @@ bool NetworkServer_ReadPackets(NetworkClientState *cs)
|
||||||
|
|
||||||
// Handle the local command-queue
|
// Handle the local command-queue
|
||||||
void NetworkHandleCommandQueue(NetworkClientState *cs) {
|
void NetworkHandleCommandQueue(NetworkClientState *cs) {
|
||||||
if (cs->command_queue != NULL) {
|
CommandPacket *cp;
|
||||||
CommandPacket *cp;
|
|
||||||
CommandPacket *cp_prev;
|
|
||||||
|
|
||||||
cp = cs->command_queue;
|
while ( (cp = cs->command_queue) != NULL) {
|
||||||
cp_prev = NULL;
|
SEND_COMMAND(PACKET_SERVER_COMMAND)(cs, cp);
|
||||||
|
|
||||||
while (cp != NULL) {
|
cs->command_queue = cp->next;
|
||||||
SEND_COMMAND(PACKET_SERVER_COMMAND)(cs, cp);
|
free(cp);
|
||||||
|
|
||||||
if (cp_prev != NULL) {
|
|
||||||
cp_prev->next = cp->next;
|
|
||||||
free(cp);
|
|
||||||
cp = cp_prev->next;
|
|
||||||
} else {
|
|
||||||
// This means we are at our first packet
|
|
||||||
cs->command_queue = cp->next;
|
|
||||||
free(cp);
|
|
||||||
cp = cs->command_queue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue