isle-portable/LEGO1/lego/sources
foxtacles 9e82c461dd
Fix ROI UAF cluster and bump Emscripten INITIAL_MEMORY to 128 MB (#807)
ROI UAF fixes:
- LegoAnimActorStruct deep-copies m_roiMap and deletes copy-assignment, so
  LegoExtraActor's copy-construction at legoextraactor.cpp no longer shares
  ownership with the source presenter.
- LegoROI tracks slot back-references; its destructor nulls every registered
  LegoROI** so per-element UAF in arrays like LegoAnimPresenter::m_roiMap is
  impossible. LegoAnimActorStruct / LegoAnimPresenter / LegoLocomotionAnimPresenter
  register and unregister around their array lifetimes.
- LegoAnimationManager::Suspend now invokes ClearMaps on every persistent
  LegoExtraActor (not just those currently in m_extras) so dormant actors
  cannot retain stale m_AnimTreePtr after world teardown. Adds ClearMaps
  overrides on Act2Actor, Act3Cop, Act3Brickster, Act3Shark, LegoRaceCar,
  LegoExtraActor.

INITIAL_MEMORY=128mb is re-added to the Emscripten link options.
2026-05-17 20:11:38 +00:00
..
3dmanager Merge remote-tracking branch 'isle/master' 2026-03-14 16:48:49 -07:00
anim Anim presenters (#1719) 2026-01-13 21:54:44 +01:00
geom Beta matches on LegoEdge and others, LegoPathActor improvements (#1743) 2026-02-14 17:50:15 +01:00
misc Rescale save-loaded textures to runtime texture dimensions (#805) 2026-05-15 01:45:40 +00:00
roi Fix ROI UAF cluster and bump Emscripten INITIAL_MEMORY to 128 MB (#807) 2026-05-17 20:11:38 +00:00
shape Merge remote-tracking branch 'isle/master' 2026-01-07 16:39:54 -07:00