diff --git a/public/crtlib.c b/public/crtlib.c index 08c728e9..5fd339a0 100644 --- a/public/crtlib.c +++ b/public/crtlib.c @@ -53,11 +53,13 @@ size_t Q_colorstr( const char *string ) return len; } -static int Q_atoi_hex( int sign, const char *str ) +int Q_atoi_hex( int sign, const char *str ) { int c, val = 0; - str += 2; + if( str[0] == '0' && ( str[1] == 'x' || str[1] == 'X' )) + str += 2; + while( 1 ) { c = *str++; diff --git a/public/crtlib.h b/public/crtlib.h index 65927a0b..ea292c83 100644 --- a/public/crtlib.h +++ b/public/crtlib.h @@ -68,6 +68,7 @@ const char *Q_buildbranch( void ); void Q_strnlwr( const char *in, char *out, size_t size_out ); #define Q_strlen( str ) (( str ) ? strlen(( str )) : 0 ) size_t Q_colorstr( const char *string ); +int Q_atoi_hex( int sign, const char *str ); int Q_atoi( const char *str ); float Q_atof( const char *str ); void Q_atov( float *vec, const char *str, size_t siz );