Ben Harris c0e08f3087 Limit width and height to SHRT_MAX in Mines
Mines' "struct set" stores co-ordinates within the grid in a pair of
shorts, which leads to very bad behaviour (including heap-based buffer
overruns) if the grid is bigger than SHRT_MAX in either dimension.  So
now we don't allow that.

The overrun can be demonstrated by loading this save file, though the
precise crash is quite variable.  In particular, you seem to get
better crashes if the file doesn't have a trailing newline.

SAVEFILE:41:Simon Tatham's Portable Puzzle Collection
PARAMS  :5:06000
CPARAMS :7:6x60000
NSTATES :1:3
STATEPOS:1:2
MOVE    :5:C0,00
GAME    :5:Mines
DESC    :22:r8,u,00000000000000000
MOVE    ::
2023-02-05 20:59:59 +00:00
2023-01-23 23:50:39 +00:00
2021-04-25 09:59:15 +01:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2018-11-13 21:48:24 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-16 10:43:41 +00:00
2023-01-15 20:59:22 +00:00
2023-01-15 16:24:27 +00:00
2023-01-15 16:24:27 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2021-03-29 19:02:23 +01:00
2018-11-13 21:48:24 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2018-11-13 21:48:24 +00:00
2023-01-16 10:46:13 +00:00
2023-01-31 23:25:05 +00:00
2023-02-01 23:00:14 +00:00
2018-11-13 21:48:24 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2017-09-20 18:03:44 +01:00
2023-02-01 00:40:07 +00:00
2021-05-21 09:10:53 +01:00
2021-03-29 19:02:23 +01:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2018-11-13 21:48:24 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2023-01-31 23:25:05 +00:00
2017-05-07 16:25:56 +01:00

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
No description provided
Readme 26 MiB
Languages
C 93.3%
JavaScript 1.4%
Objective-C 1.1%
CMake 1.1%
HTML 0.8%
Other 2.2%