From 4a8edc65bbe906093787645b98122c7750ae83e8 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Wed, 29 Oct 2014 21:41:38 +0000 Subject: [PATCH] Fix error highlighting of closed subgraphs in Bridges. 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 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bridges.c b/bridges.c index f5478af..23a95f5 100644 --- 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;