diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-24 15:33:12 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-24 15:33:12 +0000 |
| commit | 8ff7c94ac268bde9fc928a7541b573312d142663 (patch) | |
| tree | 2505bfd75979e3c3bcaec0ae32f2276d074516a8 /src/engine/server | |
| parent | 30e78ec74a34b86b395247effee1bbbd8670bd50 (diff) | |
| download | zcatch-8ff7c94ac268bde9fc928a7541b573312d142663.tar.gz zcatch-8ff7c94ac268bde9fc928a7541b573312d142663.zip | |
fixed some memory leaks
Diffstat (limited to 'src/engine/server')
| -rw-r--r-- | src/engine/server/es_server.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/engine/server/es_server.c b/src/engine/server/es_server.c index 91c3d758..a0c35772 100644 --- a/src/engine/server/es_server.c +++ b/src/engine/server/es_server.c @@ -24,6 +24,7 @@ static SNAPBUILD builder; static int64 game_start_time; static int current_tick = 0; +static int run_server = 1; static int browseinfo_gametype = -1; static int browseinfo_progression = -1; @@ -31,6 +32,8 @@ static int browseinfo_progression = -1; static int64 lastheartbeat; /*static NETADDR4 master_server;*/ + + static char current_map[64]; static int current_map_crc; static unsigned char *current_map_data = 0; @@ -949,7 +952,7 @@ static int server_run() if(config.debug) dbg_msg("server", "baseline memory usage %dk", mem_allocated()/1024); - while(1) + while(run_server) { static PERFORMACE_INFO rootscope = {"root", 0}; int64 t = time_get(); @@ -1087,6 +1090,8 @@ static int server_run() mods_shutdown(); map_unload(); + if(current_map_data) + mem_free(current_map_data); return 0; } @@ -1111,10 +1116,17 @@ static void con_status(void *result, void *user_data) } } +static void con_shutdown(void *result, void *user_data) +{ + run_server = 0; + /*server_kick(console_arg_int(result, 0), "kicked by console");*/ +} + static void server_register_commands() { MACRO_REGISTER_COMMAND("kick", "i", con_kick, 0); MACRO_REGISTER_COMMAND("status", "", con_status, 0); + MACRO_REGISTER_COMMAND("shutdown", "", con_shutdown, 0); } int main(int argc, char **argv) |