Commit 19986337 authored by Max Kellermann's avatar Max Kellermann

ClientGlobal: move client_close_all() to ClientList.cxx

parent 0194217f
...@@ -53,20 +53,9 @@ void client_manager_init(void) ...@@ -53,20 +53,9 @@ void client_manager_init(void)
* 1024; * 1024;
} }
static void client_close_all(void)
{
while (!client_list_is_empty()) {
Client *client = client_list_get_first();
client->Close();
}
assert(client_list_is_empty());
}
void client_manager_deinit(void) void client_manager_deinit(void)
{ {
client_close_all(); client_list_close_all();
client_max_connections = 0; client_max_connections = 0;
} }
...@@ -30,25 +30,11 @@ static std::list<Client *> clients; ...@@ -30,25 +30,11 @@ static std::list<Client *> clients;
static unsigned num_clients; static unsigned num_clients;
bool bool
client_list_is_empty(void)
{
return num_clients == 0;
}
bool
client_list_is_full(void) client_list_is_full(void)
{ {
return num_clients >= client_max_connections; return num_clients >= client_max_connections;
} }
Client *
client_list_get_first(void)
{
assert(!clients.empty());
return clients.front();
}
void void
client_list_add(Client *client) client_list_add(Client *client)
{ {
...@@ -74,3 +60,12 @@ client_list_remove(Client *client) ...@@ -74,3 +60,12 @@ client_list_remove(Client *client)
clients.erase(i); clients.erase(i);
--num_clients; --num_clients;
} }
void
client_list_close_all()
{
while (!clients.empty())
clients.front()->Close();
assert(num_clients == 0);
}
...@@ -23,14 +23,8 @@ ...@@ -23,14 +23,8 @@
class Client; class Client;
bool bool
client_list_is_empty(void);
bool
client_list_is_full(void); client_list_is_full(void);
Client *
client_list_get_first(void);
void void
client_list_add(Client *client); client_list_add(Client *client);
...@@ -40,4 +34,7 @@ client_list_foreach(void (*callback)(Client *client, void *ctx), void *ctx); ...@@ -40,4 +34,7 @@ client_list_foreach(void (*callback)(Client *client, void *ctx), void *ctx);
void void
client_list_remove(Client *client); client_list_remove(Client *client);
void
client_list_close_all();
#endif #endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment