summaryrefslogtreecommitdiff
path: root/src/cgame/cg_servercmds.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cgame/cg_servercmds.c')
-rw-r--r--src/cgame/cg_servercmds.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/cgame/cg_servercmds.c b/src/cgame/cg_servercmds.c
index 115c4ccf..e9de4646 100644
--- a/src/cgame/cg_servercmds.c
+++ b/src/cgame/cg_servercmds.c
@@ -82,10 +82,21 @@ static void CG_ParseTeamInfo( void )
int client;
numSortedTeamPlayers = atoi( CG_Argv( 1 ) );
+ if( numSortedTeamPlayers < 0 || numSortedTeamPlayers > TEAM_MAXOVERLAY )
+ {
+ CG_Error( "CG_ParseTeamInfo: numSortedTeamPlayers out of range (%d)",
+ numSortedTeamPlayers );
+ return;
+ }
for( i = 0; i < numSortedTeamPlayers; i++ )
{
client = atoi( CG_Argv( i * 5 + 2 ) );
+ if( client < 0 || client >= MAX_CLIENTS )
+ {
+ CG_Error( "CG_ParseTeamInfo: bad client number: %d", client );
+ return;
+ }
sortedTeamPlayers[ i ] = client;