Fix memory leak when a parent of a sub biome couldn't be found

This commit is contained in:
IntegratedQuantum 2025-01-08 22:43:03 +01:00
parent 4992176274
commit 71e0554ed2

View File

@ -670,16 +670,16 @@ pub fn finishLoading() void {
}
var subBiomeIterator = unfinishedSubBiomes.iterator();
while(subBiomeIterator.next()) |subBiomeData| {
const subBiomeDataList = subBiomeData.value_ptr;
defer subBiomeDataList.deinit(main.globalAllocator);
const parentBiome = biomesById.get(subBiomeData.key_ptr.*) orelse {
std.log.warn("Couldn't find biome with id {s}. Cannot add sub-biomes.", .{subBiomeData.key_ptr.*});
continue;
};
const subBiomeDataList = subBiomeData.value_ptr;
for(subBiomeDataList.items) |item| {
parentBiome.subBiomeTotalChance += item.chance;
}
parentBiome.subBiomes = .initFromContext(main.globalAllocator, subBiomeDataList.items);
subBiomeDataList.deinit(main.globalAllocator);
}
unfinishedSubBiomes.clearAndFree(main.globalAllocator.allocator);