about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlfred Eriksson <somerunce@gmail.com>2009-01-12 14:03:19 +0000
committerAlfred Eriksson <somerunce@gmail.com>2009-01-12 14:03:19 +0000
commit5141ddac4dec0848ccad716d2cd7a7eb2991744a (patch)
treef47d25f008eed649faa700deb30d48785e865531
parentaedd3426746cdfc1ffaa0d95455ab0a10dc786c1 (diff)
downloadzcatch-5141ddac4dec0848ccad716d2cd7a7eb2991744a.tar.gz
zcatch-5141ddac4dec0848ccad716d2cd7a7eb2991744a.zip
refreshing the server info when loading
-rw-r--r--src/engine/client/ec_client.c9
-rw-r--r--src/engine/e_if_client.h1
-rw-r--r--src/game/client/components/menus.cpp3
3 files changed, 11 insertions, 2 deletions
diff --git a/src/engine/client/ec_client.c b/src/engine/client/ec_client.c
index f243c243..91c7f008 100644
--- a/src/engine/client/ec_client.c
+++ b/src/engine/client/ec_client.c
@@ -513,8 +513,7 @@ void client_connect(const char *server_address_str)
 
 	dbg_msg("client", "connecting to '%s'", server_address_str);
 
-	mem_zero(&current_server_info, sizeof(current_server_info));
-	current_server_info_requesttime = 0;
+	//client_serverinfo_request();
 	str_copy(buf, server_address_str, sizeof(buf));
 
 	for(k = 0; buf[k]; k++)
@@ -585,6 +584,12 @@ void client_serverinfo(SERVER_INFO *serverinfo)
 	mem_copy(serverinfo, &current_server_info, sizeof(current_server_info));
 }
 
+void client_serverinfo_request()
+{
+	mem_zero(&current_server_info, sizeof(current_server_info));
+	current_server_info_requesttime = 0;
+}
+
 static int client_load_data()
 {
 	debug_font = gfx_load_texture("debug_font.png", IMG_AUTO, TEXLOAD_NORESAMPLE);
diff --git a/src/engine/e_if_client.h b/src/engine/e_if_client.h
index 39974ffe..319c3dea 100644
--- a/src/engine/e_if_client.h
+++ b/src/engine/e_if_client.h
@@ -574,5 +574,6 @@ void client_demoplayer_setpause(int paused);
 void client_demoplayer_setspeed(float speed);
 const char *client_user_directory();
 void client_serverinfo(SERVER_INFO *serverinfo);
+void client_serverinfo_request();
 void client_serverbrowse_request(NETADDR *addr);
 #endif
diff --git a/src/game/client/components/menus.cpp b/src/game/client/components/menus.cpp
index 29372b62..54c587ef 100644
--- a/src/game/client/components/menus.cpp
+++ b/src/game/client/components/menus.cpp
@@ -981,7 +981,10 @@ void MENUS::on_statechange(int new_state, int old_state)
 				popup = POPUP_DISCONNECTED;
 		}	}
 	else if(new_state == CLIENTSTATE_LOADING)
+	{
 		popup = POPUP_CONNECTING;
+		client_serverinfo_request();
+	}
 	else if(new_state == CLIENTSTATE_CONNECTING)
 		popup = POPUP_CONNECTING;
 	else if (new_state == CLIENTSTATE_ONLINE || new_state == CLIENTSTATE_DEMOPLAYBACK)