summaryrefslogtreecommitdiff
path: root/src/network/network_server.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2010-10-15 19:58:56 +0000
committerrubidium <rubidium@openttd.org>2010-10-15 19:58:56 +0000
commit9858d699a3c39be2e3a547d59163178012365598 (patch)
treeb0d10b23b4d41471d8ba846ca1805614acfec187 /src/network/network_server.cpp
parentbda26d03b509c3783596c0b3431ca0c8fd7c9990 (diff)
downloadopenttd-9858d699a3c39be2e3a547d59163178012365598.tar.xz
(svn r20935) -Codechange: only let the server side use a pool of connected sockets
Diffstat (limited to 'src/network/network_server.cpp')
-rw-r--r--src/network/network_server.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/network/network_server.cpp b/src/network/network_server.cpp
index fa251cc81..c5d8979ee 100644
--- a/src/network/network_server.cpp
+++ b/src/network/network_server.cpp
@@ -31,6 +31,7 @@
#include "../window_func.h"
#include "../roadveh.h"
#include "../order_backup.h"
+#include "../core/pool_func.hpp"
#include "../rev.h"
#include "table/strings.h"
@@ -41,6 +42,13 @@ DECLARE_POSTFIX_INCREMENT(ClientID)
/** The identifier counter for new clients (is never decreased) */
static ClientID _network_client_id = CLIENT_ID_FIRST;
+/** Make very sure the preconditions given in network_type.h are actually followed */
+assert_compile(MAX_CLIENT_SLOTS > MAX_CLIENTS);
+assert_compile(NetworkClientSocketPool::MAX_SIZE == MAX_CLIENT_SLOTS);
+
+NetworkClientSocketPool _networkclientsocket_pool("NetworkClientSocket");
+INSTANTIATE_POOL_METHODS(NetworkClientSocket)
+
/**
* Create a new socket for the server side of the game connection.
* @param s The socket to connect with.