backed_map prevents the backing geometry from being destroyed

This commit is contained in:
Zeno Rogue
2026-09-17 09:37:51 +02:00
parent b86e871b82
commit 4ce42205d9
+4
View File
@@ -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;
}