From 4ce42205d94cb0d6af3bd452d6f572de58cc2c16 Mon Sep 17 00:00:00 2001 From: Zeno Rogue Date: Thu, 17 Sep 2026 09:26:12 +0200 Subject: [PATCH] backed_map prevents the backing geometry from being destroyed --- backed-map.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/backed-map.cpp b/backed-map.cpp index 6328c4d4..2d0b6afa 100644 --- a/backed-map.cpp +++ b/backed-map.cpp @@ -27,6 +27,9 @@ struct backed_map { geometry_information *find_alt_cgip(); backed_map() { current_altmap = nullptr; } + ~backed_map() { + for(int i: {0,1}) if(alt_cgip[i]) alt_cgip[i]->use_count--; + } void store(gamedata *gd); void clear(); @@ -42,6 +45,7 @@ geometry_information *backed_map::find_alt_cgip() { if(galt_cgip) return galt_cgip; check_cgi(); cgi.require_basics(); + cgip->use_count++; return galt_cgip = cgip; }