mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 23:51:29 -07:00

This would come up on the game id "3x1#12345", for example. The failing assertion was (s->board[f] != EMPTY) in expand(), called in turn from learn_expand_or_one(). It looks as if the problem was that the #define SENTINEL was set too small. It was intended to be a value that can't coincide with the true size of any region - and it was set to precisely the area of the whole board. But on a 3x1 grid, that _can_ coincide with the size of a region! So a board entry was set to a real region size, and then mistaken for SENTINEL by another part of the code. Easy fix: set SENTINEL to be sz+1. Now it really can't coincide with a region area.
This is the README accompanying the source code to Simon Tatham's puzzle collection. The collection's web site is at <https://www.chiark.greenend.org.uk/~sgtatham/puzzles/>. The puzzle collection is built using CMake <https://cmake.org/>. To compile in the simplest way (on any of Linux, Windows or Mac), run these commands in the source directory: cmake . cmake --build . The manual is provided in Windows Help format for the Windows build; in text format for anyone who needs it; and in HTML for the Mac OS X application and for the web site. It is generated from a Halibut source file (puzzles.but), which is the preferred form for modification. To generate the manual in other formats, rebuild it, or learn about Halibut, visit the Halibut website at <https://www.chiark.greenend.org.uk/~sgtatham/halibut/>.
Description
Languages
C
93.3%
JavaScript
1.4%
Objective-C
1.1%
CMake
1.1%
HTML
0.8%
Other
2.2%