diff --git a/code/qcommon/q_shared.c b/code/qcommon/q_shared.c index e75fa2f0..37f2ec05 100644 --- a/code/qcommon/q_shared.c +++ b/code/qcommon/q_shared.c @@ -1301,12 +1301,22 @@ can mess up the server's parsing ================== */ qboolean Info_Validate( const char *s ) { - if ( strchr( s, '\"' ) ) { - return qfalse; - } - if ( strchr( s, ';' ) ) { - return qfalse; + const char* ch = s; + + while ( *ch != '\0' ) + { + if( !Q_isprint( *ch ) ) + return qfalse; + + if( *ch == '\"' ) + return qfalse; + + if( *ch == ';' ) + return qfalse; + + ++ch; } + return qtrue; }