zenorogue / hyperrogue

A SDL roguelike in a non-euclidean world
GNU General Public License v2.0
569 stars 72 forks source link

Rose Garden + memory saver crash #295

Closed jruderman closed 3 years ago

jruderman commented 3 years ago
  1. Build with ASan (in mymake.cpp, add -fsanitize=address to the compiler and linker flags)
  2. Create file savemem.hyperrogue.ini containing memory_saving_mode=yes
  3. ./hyper -c savemem.hyperrogue.ini -W "Rose" -I "Shielding" 10000 -I "Aether" 10000
  4. Walk 200 steps

Result: heap-use-after-free when buildRosemap calls whirlwind::cat on a deleted cell.

rose asan log.txt

(Initially reported by aismallard; I helped narrow down the cause.)