diff --git a/stepmania/src/EnumHelper.h b/stepmania/src/EnumHelper.h index 11df78df40..47e4748f7f 100644 --- a/stepmania/src/EnumHelper.h +++ b/stepmania/src/EnumHelper.h @@ -35,10 +35,15 @@ static inline void enum_add( T &val, int iAmt ) #define FOREACH_ENUM( e, max, var ) for( e var=(e)0; var( var, +1 ) ) +static const CString EMPTY_STRING; + #define XToString(X, CNT) \ const CString& X##ToString( X x ) \ { \ - ASSERT(unsigned(x) < CNT); \ + if( x == CNT+1 ) \ + return EMPTY_STRING; \ + ASSERT( x < CNT ); \ + ASSERT( x < (int)ARRAYSIZE(X##Names) ); \ return X##Names[x]; \ }