}
static int c2n(char c) { /* XXX cloned from singles.c */
- if (isdigit(c))
+ if (isdigit((unsigned char)c))
return (int)(c - '0');
else if (c >= 'a' && c <= 'z')
return (int)(c - 'a' + 10);
movech = ' ';
else
movech = '.';
- } else
+ } else {
assert(!"unknown action");
+ movech = 0; /* placate optimiser */
+ }
sprintf(buf, "%c%d,%d", movech, gx, gy);
err = validate_desc(p, desc);
if (err) {
fprintf(stderr, "%s: %s\nDescription: %s\n", quis, err, desc);
- free_params(p);
goto done;
}
s = new_game(NULL, p, desc);