summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristopher Schwarz <lakitu7@gmail.com>2010-04-01 19:00:24 +0000
committerTim Angus <tim@ngus.net>2013-01-03 00:17:33 +0000
commit6d9f8ffd1e5113b24fcfb4c89b6300742ddd2361 (patch)
tree5b19d415f6aad5c16d6b64a2d5ab33bf3f3fcbe1 /src
parent32a275117e183ee8a8ba029ba72c204a76ac0782 (diff)
* (bug 4582) Another bad userinfo fix
Diffstat (limited to 'src')
-rw-r--r--src/game/g_client.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/game/g_client.c b/src/game/g_client.c
index 0cdd7d0b..c803ca1c 100644
--- a/src/game/g_client.c
+++ b/src/game/g_client.c
@@ -999,6 +999,11 @@ char *ClientUserinfoChanged( int clientNum )
"dropped: illegal or malformed userinfo");
return "Illegal or malformed userinfo";
}
+ // If their userinfo overflowed, tremded is in the process of disconnecting them.
+ // If we send our own disconnect, it won't work, so just return to prevent crashes later
+ // in this function. This check must come after the Info_Validate call.
+ else if( !userinfo[ 0 ] )
+ return "Empty (overflowed) userinfo";
// stickyspec toggle
s = Info_ValueForKey( userinfo, "cg_stickySpec" );