X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/blobdiff_plain/51990f54372f9c63cef56dbe14a61f3b00a6760c..9ec8a3176a8fe57877548f2226a91d702c63b849:/signpost.c diff --git a/signpost.c b/signpost.c index 05d4eaf..b6db3a3 100644 --- a/signpost.c +++ b/signpost.c @@ -423,6 +423,8 @@ static char *validate_params(game_params *params, int full) { if (params->w < 2 || params->h < 2) return "Width and height must both be at least two"; + if (params->w == 2 && params->h == 2) /* leads to generation hang */ + return "Width and height cannot both be two"; return NULL; } @@ -750,6 +752,7 @@ static int new_game_strip(game_state *state, random_state *rs) copy->flags[j] |= FLAG_IMMUTABLE; state->flags[j] |= FLAG_IMMUTABLE; debug_state("Copy of state: ", copy); + strip_nums(copy); if (solve_state(copy) > 0) goto solved; assert(check_nums(state, copy, 1)); }