From 112f7b7a0dec5181e205cb00ce6162909e88dfdc Mon Sep 17 00:00:00 2001 From: Leurak Date: Thu, 4 May 2017 12:14:28 +0200 Subject: [PATCH] Add address parameter in network_begin_server --- src/openrct2/network/network.cpp | 11 +++++------ src/openrct2/network/network.h | 2 +- src/openrct2/windows/server_start.c | 4 ++-- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/openrct2/network/network.cpp b/src/openrct2/network/network.cpp index f8d56eac38..94ec42b6f6 100644 --- a/src/openrct2/network/network.cpp +++ b/src/openrct2/network/network.cpp @@ -274,6 +274,9 @@ bool Network::BeginServer(uint16 port, const char* address) _userManager.Load(); + if (strlen(address) == 0) + address = nullptr; + log_verbose("Begin listening for clients"); assert(listening_socket == nullptr); @@ -2134,12 +2137,8 @@ sint32 network_begin_client(const char *host, sint32 port) return gNetwork.BeginClient(host, port); } -sint32 network_begin_server(sint32 port) +sint32 network_begin_server(sint32 port, const char* address) { - char *address = nullptr; - if (strlen(gConfigNetwork.listen_address) > 0) - address = gConfigNetwork.listen_address; - return gNetwork.BeginServer(port, address); } @@ -2674,7 +2673,7 @@ void network_send_gamecmd(uint32 eax, uint32 ebx, uint32 ecx, uint32 edx, uint32 void network_send_map() {} void network_update() {} sint32 network_begin_client(const char *host, sint32 port) { return 1; } -sint32 network_begin_server(sint32 port) { return 1; } +sint32 network_begin_server(sint32 port, const char * address) { return 1; } sint32 network_get_num_players() { return 1; } const char* network_get_player_name(uint32 index) { return "local (OpenRCT2 compiled without MP)"; } uint32 network_get_player_flags(uint32 index) { return 0; } diff --git a/src/openrct2/network/network.h b/src/openrct2/network/network.h index 60aa181c9a..ec5d657004 100644 --- a/src/openrct2/network/network.h +++ b/src/openrct2/network/network.h @@ -264,7 +264,7 @@ sint32 network_init(); void network_close(); void network_shutdown_client(); sint32 network_begin_client(const char *host, sint32 port); -sint32 network_begin_server(sint32 port); +sint32 network_begin_server(sint32 port, const char* address); sint32 network_get_mode(); sint32 network_get_status(); diff --git a/src/openrct2/windows/server_start.c b/src/openrct2/windows/server_start.c index ffd9e020f5..05731e14bc 100644 --- a/src/openrct2/windows/server_start.c +++ b/src/openrct2/windows/server_start.c @@ -166,7 +166,7 @@ static void window_server_start_scenarioselect_callback(const utf8 *path) { network_set_password(_password); if (scenario_load_and_play_from_path(path)) { - network_begin_server(gConfigNetwork.default_port); + network_begin_server(gConfigNetwork.default_port, gConfigNetwork.listen_address); } else { title_load(); } @@ -175,7 +175,7 @@ static void window_server_start_scenarioselect_callback(const utf8 *path) static void window_server_start_loadsave_callback(sint32 result, const utf8 * path) { if (result == MODAL_RESULT_OK && game_load_save_or_scenario(path)) { - network_begin_server(gConfigNetwork.default_port); + network_begin_server(gConfigNetwork.default_port, gConfigNetwork.listen_address); } }