summaryrefslogtreecommitdiff
path: root/network_server.c
diff options
context:
space:
mode:
authorludde <ludde@openttd.org>2005-07-16 15:05:52 +0000
committerludde <ludde@openttd.org>2005-07-16 15:05:52 +0000
commit9d6b7f1e9fc9274df1a2646575aacc7010894a96 (patch)
tree78c10a10b9a90a900fddec14375581f6f53999f1 /network_server.c
parent7ddd9fe0e39e43b1202422675008c09546687e32 (diff)
downloadopenttd-9d6b7f1e9fc9274df1a2646575aacc7010894a96.tar.xz
(svn r2591) Codechange: [network] Cleanup NetworkHandleCommandQueue
Diffstat (limited to 'network_server.c')
-rw-r--r--network_server.c24
1 files changed, 5 insertions, 19 deletions
diff --git a/network_server.c b/network_server.c
index ca8bd2e8f..45f40bcc8 100644
--- a/network_server.c
+++ b/network_server.c
@@ -1485,27 +1485,13 @@ bool NetworkServer_ReadPackets(NetworkClientState *cs)
// Handle the local command-queue
void NetworkHandleCommandQueue(NetworkClientState *cs) {
- if (cs->command_queue != NULL) {
- CommandPacket *cp;
- CommandPacket *cp_prev;
+ CommandPacket *cp;
- cp = cs->command_queue;
- cp_prev = NULL;
+ while ( (cp = cs->command_queue) != NULL) {
+ SEND_COMMAND(PACKET_SERVER_COMMAND)(cs, cp);
- while (cp != NULL) {
- SEND_COMMAND(PACKET_SERVER_COMMAND)(cs, 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;
- }
- }
+ cs->command_queue = cp->next;
+ free(cp);
}
}