From f967bfa87b6ea08434501558e0c41184fdce333d Mon Sep 17 00:00:00 2001 From: Chris Boyle Date: Wed, 21 Dec 2016 20:01:25 +0000 Subject: Prevent starting in a solved state in Fifteen & Flood (cherry picked from Android port, commit cb38abdc71780bd9b393b90514396c338306fa69) --- flood.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'flood.c') diff --git a/flood.c b/flood.c index 80f2ff6..eeca88b 100644 --- a/flood.c +++ b/flood.c @@ -552,8 +552,10 @@ static char *new_game_desc(const game_params *params, random_state *rs, /* * Invent a random grid. */ - for (i = 0; i < wh; i++) - scratch->grid[i] = random_upto(rs, params->colours); + do { + for (i = 0; i < wh; i++) + scratch->grid[i] = random_upto(rs, params->colours); + } while (completed(w, h, scratch->grid)); /* * Run the solver, and count how many moves it uses. -- cgit v1.1