chiark / gitweb /
Fix error highlighting of closed subgraphs in Bridges.
authorSimon Tatham <anakin@pobox.com>
Wed, 29 Oct 2014 21:41:38 +0000 (21:41 +0000)
committerSimon Tatham <anakin@pobox.com>
Wed, 29 Oct 2014 21:41:38 +0000 (21:41 +0000)
When I did the recent rewrite of the Bridges drawing code, I spotted
and replicated the code in game_redraw that set G_WARN at redraw time
on an island with unsatisfiable clues, but didn't spot the code
elsewhere (e.g. map_group_check) which might have set G_WARN ahead of
time, so I failed to check for that. As a result, if you join some
islands together into a subgraph with no further room for expansion
(e.g. connect a pair of 1s together, or a pair of 2s with a double
bridge) then all the bridges in that subgraph light up red but the
islands themselves forget to.

Trivial one-line fix.

bridges.c

index f5478af100d6f4db1c731841a6ed1b9428011d26..23a95f58cc7a7c7f457ef3926e10f9dff230aba0 100644 (file)
--- a/bridges.c
+++ b/bridges.c
@@ -2967,7 +2967,7 @@ static void game_redraw(drawing *dr, game_drawstate *ds,
                 if (is_drag_src && (is == is_drag_src ||
                                     (is_drag_dst && is == is_drag_dst)))
                     idata |= DI_COL_SELECTED;
-                else if (island_impossible(is, v & G_MARK))
+                else if (island_impossible(is, v & G_MARK) || (v & G_WARN))
                     idata |= DI_COL_WARNING;
                 else
                     idata |= DI_COL_NORMAL;