shithub: puzzles

Download patch

ref: a8980f3736031dc971754bd7ecc55795680a62e5
parent: f07576f49e9b08c9a9b2482b07e14a3e846224eb
author: Simon Tatham <anakin@pobox.com>
date: Mon Sep 12 13:09:29 EDT 2005

I am again gormless! When I overhauled Solo's grid generator in
r6160, I completely failed to ensure that generated grids were _at
most_ the required difficulty. It appears to have been only random
chance that prevented a request for a Trivial puzzle from producing
Extreme. Here's a one-line fix.

[originally from svn r6298]
[r6160 == e55838bc9b0d173ca539d0cfe714495b5c12b9dd]

--- a/solo.c
+++ b/solo.c
@@ -2220,7 +2220,7 @@
                 grid2[coords[2*j+1]*cr+coords[2*j]] = 0;
 
             ret = solver(c, r, grid2, maxdiff);
-            if (ret != DIFF_IMPOSSIBLE && ret != DIFF_AMBIGUOUS) {
+            if (ret <= maxdiff) {
                 for (j = 0; j < ncoords; j++)
                     grid[coords[2*j+1]*cr+coords[2*j]] = 0;
             }