shithub: puzzles

Download patch

ref: 4f81608c40cdecec7448d97f4bbf7f01b524b963
parent: e3f97413174f02298ab554cc07c7c521a654db2c
author: Simon Tatham <anakin@pobox.com>
date: Sat Apr 7 18:19:18 EDT 2012

Fix redundant redrawing in Pegs. Apparently it has always redrawn
every single peg and hole on the board, every time it did any kind of
redraw at all, because I forgot to update the array in the drawstate
indicating the last-drawn state of each position. And nobody's noticed
until now!

[originally from svn r9447]

--- a/pegs.c
+++ b/pegs.c
@@ -1237,6 +1237,7 @@
                 (bgcolour != ds->bgcolour || /* always redraw when flashing */
                  v != ds->grid[y*w+x])) {
 		draw_tile(dr, ds, COORD(x), COORD(y), v, bgcolour);
+                ds->grid[y*w+x] = v;
 	    }
 	}