aboutsummaryrefslogtreecommitdiff
path: root/twiddle.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2005-05-02 13:22:25 +0000
committerSimon Tatham <anakin@pobox.com>2005-05-02 13:22:25 +0000
commitc2273f2718b52fef1638baed4e4e383e221c53f2 (patch)
tree52cfa61ca77eee1b886bb7ee2b9cbb4501d1781b /twiddle.c
parentd8cc157c5516138090bd92b9bb70044da0e7842d (diff)
downloadpuzzles-c2273f2718b52fef1638baed4e4e383e221c53f2.zip
puzzles-c2273f2718b52fef1638baed4e4e383e221c53f2.tar.gz
puzzles-c2273f2718b52fef1638baed4e4e383e221c53f2.tar.bz2
puzzles-c2273f2718b52fef1638baed4e4e383e221c53f2.tar.xz
Ahem. The `Solve' option in orientable Twiddle needs to correct the
orientations as well as the order! [originally from svn r5733]
Diffstat (limited to 'twiddle.c')
-rw-r--r--twiddle.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/twiddle.c b/twiddle.c
index 8a389b4..d67dc40 100644
--- a/twiddle.c
+++ b/twiddle.c
@@ -479,6 +479,7 @@ static game_state *solve_game(game_state *state, game_aux_info *aux,
char **error)
{
game_state *ret = dup_game(state);
+ int i;
/*
* Simply replace the grid with a solved one. For this game,
@@ -488,6 +489,8 @@ static game_state *solve_game(game_state *state, game_aux_info *aux,
* which to practise manoeuvres.
*/
qsort(ret->grid, ret->w*ret->h, sizeof(int), compare_int);
+ for (i = 0; i < ret->w*ret->h; i++)
+ ret->grid[i] &= ~3;
ret->used_solve = ret->just_used_solve = TRUE;
ret->completed = ret->movecount;