- fixed: The command line parser of the console was incapable of handling non-ASCII characters.

This commit is contained in:
Christoph Oelckers 2019-03-11 00:26:37 +01:00
parent 4532c2c489
commit 02836b3c3f
2 changed files with 5 additions and 5 deletions

View file

@ -563,7 +563,7 @@ void C_DoCommand (const char *cmd, int keynum)
const char *beg;
// Skip any beginning whitespace
while (*cmd && *cmd <= ' ')
while (*cmd > 0 && *cmd <= ' ')
cmd++;
// Find end of the command name
@ -575,7 +575,7 @@ void C_DoCommand (const char *cmd, int keynum)
else
{
beg = cmd;
for (end = cmd+1; *end > ' '; ++end)
for (end = cmd+1; *end > ' ' || *end < 0; ++end)
;
}
@ -728,7 +728,7 @@ void AddCommandString (const char *text, int keynum)
more = 0;
}
// Intercept wait commands here. Note: wait must be lowercase
while (*cmd && *cmd <= ' ')
while (*cmd > 0 && *cmd <= ' ')
cmd++;
if (*cmd)
{

View file

@ -828,12 +828,12 @@ void FString::StripLeftRight ()
if (max == 0) return;
for (i = 0; i < max; ++i)
{
if (!isspace((unsigned char)Chars[i]))
if (Chars[i] < 0 || !isspace((unsigned char)Chars[i]))
break;
}
for (j = max - 1; j >= i; --j)
{
if (!isspace((unsigned char)Chars[j]))
if (Chars[i] < 0 || !isspace((unsigned char)Chars[j]))
break;
}
if (i == 0 && j == max - 1)