Skip to content

Commit 7d002b6

Browse files
sapierkwolekr
sapier
authored andcommittedApr 9, 2013
fix emergemanager memory leaks
1 parent 04c3b17 commit 7d002b6

File tree

2 files changed

+17
-1
lines changed

2 files changed

+17
-1
lines changed
 

‎src/emerge.cpp

+15-1
Original file line numberDiff line numberDiff line change
@@ -96,9 +96,23 @@ EmergeManager::~EmergeManager() {
9696
delete emergethread[i];
9797
delete mapgen[i];
9898
}
99+
emergethread.clear();
100+
101+
for (unsigned int i = 0; i < mapgen.size(); i++)
102+
delete mapgen[i];
103+
mapgen.clear();
104+
105+
for (unsigned int i = 0; i < ores.size(); i++)
106+
delete ores[i];
107+
ores.clear();
99108

109+
for (std::map<std::string, MapgenFactory *>::iterator iter = mglist.begin();
110+
iter != mglist.end(); iter ++) {
111+
delete iter->second;
112+
}
113+
mglist.clear();
114+
100115
delete biomedef;
101-
delete params;
102116
}
103117

104118

‎src/map.cpp

+2
Original file line numberDiff line numberDiff line change
@@ -2494,6 +2494,8 @@ ServerMap::~ServerMap()
24942494
delete chunk;
24952495
}
24962496
#endif
2497+
2498+
delete m_mgparams;
24972499
}
24982500

24992501
bool ServerMap::initBlockMake(BlockMakeData *data, v3s16 blockpos)

0 commit comments

Comments
 (0)
Please sign in to comment.