shithub: puzzles

Download patch

ref: 81e3a145bff031c0bb010a3678870990ae915faf
parent: 05a0cf068498663f0f2e17b9fa19b2188db6e6a7
author: Simon Tatham <anakin@pobox.com>
date: Sat May 12 04:14:37 EDT 2007

Remove the check for disconnected pieces; it's over-general and
triggers on a perfectly connected piece shaped like an inverted T.

[originally from svn r7570]

--- a/unfinished/slide.c
+++ b/unfinished/slide.c
@@ -896,7 +896,7 @@
     int w = params->w, h = params->h, wh = w*h;
     int *active, *link;
     int mains = 0, mpos = -1;
-    int i, j, tx, ty, minmoves;
+    int i, tx, ty, minmoves;
     char *ret;
 
     active = snewn(wh, int);
@@ -941,13 +941,6 @@
 	    }
 
 	    link[i] = i - dist;
-	    for (j = i; j > 0; j = link[j])
-		if (j == i-1 || j == i-w)
-		    break;
-	    if (j < 0) {
-		ret = "Disconnected piece in game description";
-		goto done;
-	    }
 
 	    active[i] = TRUE;
 	    active[link[i]] = FALSE;