summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Howard2006-03-30 19:16:06 +0000
committerSimon Howard2006-03-30 19:16:06 +0000
commit75f72e914b753c2f14f58958c37f968ca7ec1035 (patch)
tree56da257760434577f1fa3a9e5a69641a66271402
parentdb725c988cff2dd93306aa9139bdbbbea8af68db (diff)
downloadchocolate-doom-75f72e914b753c2f14f58958c37f968ca7ec1035.tar.gz
chocolate-doom-75f72e914b753c2f14f58958c37f968ca7ec1035.tar.bz2
chocolate-doom-75f72e914b753c2f14f58958c37f968ca7ec1035.zip
When all players leave a server, start accepting new connections again.
This lets people run proper dedicated servers. Subversion-branch: /trunk/chocolate-doom Subversion-revision: 457
-rw-r--r--src/net_server.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/net_server.c b/src/net_server.c
index b964beae..efa47292 100644
--- a/src/net_server.c
+++ b/src/net_server.c
@@ -1,7 +1,7 @@
// Emacs style mode select -*- C++ -*-
//-----------------------------------------------------------------------------
//
-// $Id: net_server.c 455 2006-03-30 19:08:37Z fraggle $
+// $Id: net_server.c 457 2006-03-30 19:16:06Z fraggle $
//
// Copyright(C) 2005 Simon Howard
//
@@ -1255,6 +1255,14 @@ static void NET_SV_RunClient(net_client_t *client)
client->active = false;
free(client->name);
NET_FreeAddress(client->addr);
+
+ // Are there any clients left connected? If not, return the
+ // server to the waiting-for-players state.
+
+ if (NET_SV_NumClients() <= 0)
+ {
+ server_state = SERVER_WAITING_START;
+ }
}
if (!ClientConnected(client))