about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorMagnus Auvinen <magnus.auvinen@gmail.com>2009-01-24 10:46:38 +0000
committerMagnus Auvinen <magnus.auvinen@gmail.com>2009-01-24 10:46:38 +0000
commit6696359a28c499daa9a898564e2a6bf7015a6eaf (patch)
tree2de56f68e49619407ccf798c5a07cdbaa6629370 /src
parentaffb99fd2b7973146a92626144026baf50990136 (diff)
downloadzcatch-6696359a28c499daa9a898564e2a6bf7015a6eaf.tar.gz
zcatch-6696359a28c499daa9a898564e2a6bf7015a6eaf.zip
fixed so that the client connect command works when passed as an argument
Diffstat (limited to 'src')
-rw-r--r--src/engine/client/ec_client.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/engine/client/ec_client.c b/src/engine/client/ec_client.c
index 1a332ba4..7bd97e3e 100644
--- a/src/engine/client/ec_client.c
+++ b/src/engine/client/ec_client.c
@@ -75,6 +75,9 @@ static int64 ping_start_time = 0;
 static char current_map[256] = {0};
 static int current_map_crc = 0;
 
+/* */
+static char cmd_connect[256] = {0};
+
 /* map download */
 static char mapdownload_filename[256] = {0};
 static char mapdownload_name[256] = {0};
@@ -1661,6 +1664,13 @@ static void client_run()
 		/* */
 		client_versionupdate();
 		
+		/* handle pending connects */
+		if(cmd_connect[0])
+		{
+			client_connect(cmd_connect);
+			cmd_connect[0] = 0;
+		}
+		
 		/* update input */
 		{
 			static PERFORMACE_INFO scope = {"inp_update", 0};
@@ -1827,7 +1837,7 @@ static void client_run()
 
 static void con_connect(void *result, void *user_data)
 {
-	client_connect(console_arg_string(result, 0));
+	str_copy(cmd_connect, console_arg_string(result, 0), sizeof(cmd_connect));
 }
 
 static void con_disconnect(void *result, void *user_data)