mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 16:05:44 -07:00
`Solve' operation on an already solved map without an aux_info was
returning NULL due to no moves being required, leading to a strange error message. Trivial fix. [originally from svn r6198]
This commit is contained in:
9
map.c
9
map.c
@ -1563,8 +1563,10 @@ static char *solve_game(game_state *state, game_state *currstate,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
retlen = retsize = 0;
|
retsize = 64;
|
||||||
ret = NULL;
|
ret = snewn(retsize, char);
|
||||||
|
strcpy(ret, "S");
|
||||||
|
retlen = 1;
|
||||||
|
|
||||||
for (i = 0; i < state->map->n; i++) {
|
for (i = 0; i < state->map->n; i++) {
|
||||||
int len;
|
int len;
|
||||||
@ -1574,8 +1576,7 @@ static char *solve_game(game_state *state, game_state *currstate,
|
|||||||
continue;
|
continue;
|
||||||
assert(!state->map->immutable[i]);
|
assert(!state->map->immutable[i]);
|
||||||
|
|
||||||
len = sprintf(buf, "%s%d:%d", retlen ? ";" : "S;",
|
len = sprintf(buf, ";%d:%d", colouring[i], i);
|
||||||
colouring[i], i);
|
|
||||||
if (retlen + len >= retsize) {
|
if (retlen + len >= retsize) {
|
||||||
retsize = retlen + len + 256;
|
retsize = retlen + len + 256;
|
||||||
ret = sresize(ret, retsize, char);
|
ret = sresize(ret, retsize, char);
|
||||||
|
Reference in New Issue
Block a user