mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 23:51:29 -07:00
Quite a few instances of the Cardinal Error of Ctype were turned up
by a grep I just did. Oops. [originally from svn r6113]
This commit is contained in:
2
cube.c
2
cube.c
@ -285,7 +285,7 @@ static void decode_params(game_params *ret, char const *string)
|
||||
default: break;
|
||||
}
|
||||
ret->d1 = ret->d2 = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
if (*string == 'x') {
|
||||
string++;
|
||||
ret->d2 = atoi(string);
|
||||
|
@ -76,7 +76,7 @@ static game_params *dup_params(game_params *params)
|
||||
static void decode_params(game_params *ret, char const *string)
|
||||
{
|
||||
ret->w = ret->h = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
if (*string == 'x') {
|
||||
string++;
|
||||
ret->h = atoi(string);
|
||||
|
4
flip.c
4
flip.c
@ -116,11 +116,11 @@ static game_params *dup_params(game_params *params)
|
||||
static void decode_params(game_params *ret, char const *string)
|
||||
{
|
||||
ret->w = ret->h = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
if (*string == 'x') {
|
||||
string++;
|
||||
ret->h = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
}
|
||||
if (*string == 'r') {
|
||||
string++;
|
||||
|
@ -213,16 +213,16 @@ static void decode_params(game_params *ret, char const *string)
|
||||
ret->movetarget = 0;
|
||||
|
||||
ret->width = atoi(p);
|
||||
while (*p && isdigit(*p)) p++;
|
||||
while (*p && isdigit((unsigned char)*p)) p++;
|
||||
if (*p == 'x') {
|
||||
p++;
|
||||
ret->height = atoi(p);
|
||||
while (*p && isdigit(*p)) p++;
|
||||
while (*p && isdigit((unsigned char)*p)) p++;
|
||||
if ( (ret->wrapping = (*p == 'w')) != 0 )
|
||||
p++;
|
||||
if (*p == 'b') {
|
||||
ret->barrier_probability = atof(++p);
|
||||
while (*p && (isdigit(*p) || *p == '.')) p++;
|
||||
while (*p && (isdigit((unsigned char)*p) || *p == '.')) p++;
|
||||
}
|
||||
if (*p == 'm') {
|
||||
ret->movetarget = atoi(++p);
|
||||
|
@ -106,11 +106,11 @@ static void decode_params(game_params *ret, char const *string)
|
||||
char const *p = string;
|
||||
|
||||
ret->w = atoi(p);
|
||||
while (*p && isdigit(*p)) p++;
|
||||
while (*p && isdigit((unsigned char)*p)) p++;
|
||||
if (*p == 'x') {
|
||||
p++;
|
||||
ret->h = atoi(p);
|
||||
while (*p && isdigit(*p)) p++;
|
||||
while (*p && isdigit((unsigned char)*p)) p++;
|
||||
} else {
|
||||
ret->h = ret->w;
|
||||
}
|
||||
|
@ -291,9 +291,9 @@ static char *validate_desc(game_params *params, char *desc)
|
||||
char *q = p;
|
||||
int n;
|
||||
|
||||
if (!isdigit(*p))
|
||||
if (!isdigit((unsigned char)*p))
|
||||
return "Not enough numbers in string";
|
||||
while (isdigit(*p)) p++;
|
||||
while (isdigit((unsigned char)*p)) p++;
|
||||
|
||||
if (i < area-1 && *p != ',')
|
||||
return "Expected comma after number";
|
||||
|
@ -100,7 +100,7 @@ static void decode_params(game_params *ret, char const *string)
|
||||
{
|
||||
ret->w = ret->h = atoi(string);
|
||||
ret->movetarget = 0;
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
if (*string == 'x') {
|
||||
string++;
|
||||
ret->h = atoi(string);
|
||||
|
@ -108,16 +108,16 @@ static void decode_params(game_params *ret, char const *string)
|
||||
ret->n = 2;
|
||||
ret->rowsonly = ret->orientable = FALSE;
|
||||
ret->movetarget = 0;
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
if (*string == 'x') {
|
||||
string++;
|
||||
ret->h = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
}
|
||||
if (*string == 'n') {
|
||||
string++;
|
||||
ret->n = atoi(string);
|
||||
while (*string && isdigit(*string)) string++;
|
||||
while (*string && isdigit((unsigned char)*string)) string++;
|
||||
}
|
||||
while (*string) {
|
||||
if (*string == 'r') {
|
||||
@ -127,7 +127,7 @@ static void decode_params(game_params *ret, char const *string)
|
||||
} else if (*string == 'm') {
|
||||
string++;
|
||||
ret->movetarget = atoi(string);
|
||||
while (string[1] && isdigit(string[1])) string++;
|
||||
while (string[1] && isdigit((unsigned char)string[1])) string++;
|
||||
}
|
||||
string++;
|
||||
}
|
||||
|
@ -1690,7 +1690,7 @@ int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show)
|
||||
RegisterClass(&wndclass);
|
||||
}
|
||||
|
||||
while (*cmdline && isspace(*cmdline))
|
||||
while (*cmdline && isspace((unsigned char)*cmdline))
|
||||
cmdline++;
|
||||
|
||||
if (!new_window(inst, *cmdline ? cmdline : NULL, &error)) {
|
||||
|
Reference in New Issue
Block a user