From: simon Date: Sun, 22 May 2005 11:45:20 +0000 (+0000) Subject: Special case in dead-end checking which prevents the solver falling X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/puzzles/commitdiff_plain/9535138a690f4efdc0b38a422f45fcfdaf887c80 Special case in dead-end checking which prevents the solver falling over on a grid containing a 0 (completely blank) tile. This can't happen in self-generated grids, but can happen if you type in a grid from another Net implementation. Previously, the solver would notice (technically correctly!) that a completely blank tile connects to no other tiles and thus forms an isolated subgraph, and would therefore complain that no orientation of that tile could possibly yield a valid solution... git-svn-id: svn://svn.tartarus.org/sgt/puzzles@5828 cda61777-01e9-0310-a592-d414129be87e --- diff --git a/net.c b/net.c index b5134a9..5037c9b 100644 --- a/net.c +++ b/net.c @@ -657,7 +657,7 @@ static int net_solver(int w, int h, unsigned char *tiles, * dead ends of size 2 and 3 forms a subnetwork * with a total area of 6, not 5.) */ - if (deadendtotal+1 < area) + if (deadendtotal > 0 && deadendtotal+1 < area) valid = FALSE; } else if (nnondeadends == 1) { /*