Make init_RACE()/uninit_RACE() calls symmetric; takes care of memory leaks from bug #1149; thanks to Louis Delacroix

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3778 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
avolkov
2012-02-26 21:05:46 +00:00
parent 2e67a5a007
commit b571a8ce39
3 changed files with 3 additions and 6 deletions
-3
View File
@@ -311,9 +311,6 @@ UninitShips (void)
crew_retrieved;
}
if (StarShipPtr->RaceDescPtr->uninit_func != NULL)
(*StarShipPtr->RaceDescPtr->uninit_func) (
StarShipPtr->RaceDescPtr);
/* Record crew left after battle */
StarShipPtr->crew_level =
StarShipPtr->RaceDescPtr->ship_info.crew_level;
+3
View File
@@ -170,6 +170,9 @@ void
free_ship (RACE_DESC *raceDescPtr, BOOLEAN FreeIconData,
BOOLEAN FreeBattleData)
{
if (raceDescPtr->uninit_func != NULL)
(*raceDescPtr->uninit_func) (raceDescPtr);
if (FreeBattleData)
{
DATA_STUFF *shipData = &raceDescPtr->ship_data;
-3
View File
@@ -473,9 +473,6 @@ new_ship (ELEMENT *DeadShipPtr)
SetElementStarShip (DeadShipPtr, 0);
RestartMusic = OpponentAlive (DeadStarShipPtr);
if (DeadStarShipPtr->RaceDescPtr->uninit_func != NULL)
(*DeadStarShipPtr->RaceDescPtr->uninit_func) (
DeadStarShipPtr->RaceDescPtr);
free_ship (DeadStarShipPtr->RaceDescPtr, TRUE, TRUE);
DeadStarShipPtr->RaceDescPtr = 0;