Fix octal string escaped

This commit is contained in:
drmortalwombat 2024-09-16 16:36:06 +02:00
parent e89aa11e86
commit bfa1254eb7

View File

@ -2052,8 +2052,25 @@ void Scanner::StringToken(char terminator, char mode)
switch (ch)
{
case '0':
mTokenChar = '\0';
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
{
mTokenChar = ch - '0';
if (mLine[mOffset] >= '0' && mLine[mOffset] <= '7')
{
mTokenChar = mTokenChar * 8 + mLine[mOffset ++ ] - '0';
if (mLine[mOffset] >= '0' && mLine[mOffset] <= '7')
{
mTokenChar = mTokenChar * 8 + mLine[mOffset++] - '0';
}
}
break;
}
case 'n':
mTokenChar = '\n';
break;
@ -2146,8 +2163,25 @@ void Scanner::CharToken(char mode)
switch (ch)
{
case '0':
mTokenChar = '\0';
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
{
mTokenChar = ch - '0';
if (mLine[mOffset] >= '0' && mLine[mOffset] <= '7')
{
mTokenChar = mTokenChar * 8 + mLine[mOffset++] - '0';
if (mLine[mOffset] >= '0' && mLine[mOffset] <= '7')
{
mTokenChar = mTokenChar * 8 + mLine[mOffset++] - '0';
}
}
break;
}
case 'n':
mTokenChar = '\n';
break;