NumberParser::parseUnsigned should not parse negative numbers

The function should abort if a negative number (e.g. "-123") is passed as input
This commit is contained in:
Pascal Bach
2014-04-28 16:14:17 +02:00
parent 695ba1b0ee
commit d9a594e184
2 changed files with 8 additions and 0 deletions

View File

@@ -110,6 +110,8 @@ bool strToInt(const char* pStr, I& result, short base, char thSep = ',')
char sign = 1;
if ((base == 10) && (*pStr == '-'))
{
// Unsigned types can't be negative so abort parsing
if (std::numeric_limits<I>::min() >= 0) return false;
sign = -1;
++pStr;
}