McRogueFace/modules
John McCardle 79df32317b Bump libtcod-headless to 79abc66 (FOV overflow fixes); closes #321
#321 was an ASan heap-buffer-overflow in view_array_insert
(fov_permissive2.c:97) reached via ColorLayer.draw_fov ->
GridData::computeFOV -> TCOD_map_compute_fov_permissive2, surfaced by the
#312 fuzz_fov campaign. The "bad-free in ~GridData" in the issue title is
the downstream symptom of this active_views buffer overflow.

The bump pulls in four upstream FOV commits:
  - off-by-one in view_array_insert overflowing active_views  <- root cause
  - undersized bumps buffer overflow on tiny permissive maps
  - MRPAS obstacle buffer overflow / malloc(0) on small maps
  - regression tests for FOV

Verified by A/B replay of the fuzz_fov crash corpus under clang-18 ASan,
same build config (clang-18, -DLIBTCOD_SDL3=OFF, identical sanitizer
flags) with only the submodule commit differing:
  pre-fix  (8835239): fov-crash-5f34f68e and fov-crash-a451db54 abort with
                      heap-buffer-overflow in view_array_insert inside
                      GridData::computeFOV
  post-fix (79abc66): all crash inputs clean; 45s / 21,952-run fov fuzz
                      smoke clean, no new crashes

Note: __lib/libtcod.so (gitignored, the shipped desktop lib) must be
rebuilt from this submodule commit for release binaries to carry the fix.

Also updates ROADMAP: #321 moved to Recently Shipped; open-issue count
refreshed to the post-#312 tracker state.

closes #321

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TvvE6TB2cScBVbeap2btHw
2026-06-26 20:57:38 -04:00
..
cpython@931e6b4e3f WIP: update submodule refs for cpython, imgui-sfml, and libtcod-headless 2026-04-06 01:15:49 -04:00
imgui@c6e0284ac5 feat: Add ImGui-based developer console overlay 2025-11-26 20:03:58 -05:00
imgui-sfml@4a67e85f7e WIP: update submodule refs for cpython, imgui-sfml, and libtcod-headless 2026-04-06 01:15:49 -04:00
json@21b53746c9 Tiled XML/JSON import support 2026-02-06 21:43:03 -05:00
libtcod-headless@79abc66578 Bump libtcod-headless to 79abc66 (FOV overflow fixes); closes #321 2026-06-26 20:57:38 -04:00
RapidXML@3a42082084 Tiled XML/JSON import support 2026-02-06 21:43:03 -05:00
SFML@69ea0cd863 Refactor: Python 3.12, build libtcod & SFML from source. Cmake build. Directory cleanup 2024-02-24 22:48:39 -05:00