(svn r1978) - Fix: Plug some memleaks; thanks Valgrind

This commit is contained in:
Darkvater
2005-03-09 19:48:20 +00:00
parent 9bc68d209f
commit 9bd079d425
7 changed files with 57 additions and 24 deletions

16
ttd.c
View File

@@ -447,6 +447,11 @@ static void UnInitializeDynamicVariables(void)
free(_industry_sort);
}
static void UnInitializeGame(void)
{
UnInitWindowSystem();
UnInitNewgrEngines();
}
static void LoadIntroGame(void)
{
@@ -459,7 +464,7 @@ static void LoadIntroGame(void)
LoadStringWidthTable();
// Setup main window
InitWindowSystem();
ResetWindowSystem();
SetupColorsAndInitialWindow();
// Generate a world.
@@ -699,6 +704,7 @@ int ttd_main(int argc, char* argv[])
/* Close all and any open filehandles */
FioCloseAll();
UnInitializeGame();
return 0;
}
@@ -725,7 +731,7 @@ static void MakeNewGame(void)
GfxLoadSprites();
// Reinitialize windows
InitWindowSystem();
ResetWindowSystem();
LoadStringWidthTable();
SetupColorsAndInitialWindow();
@@ -757,7 +763,7 @@ static void MakeNewEditorWorld(void)
GfxLoadSprites();
// Re-init the windowing system
InitWindowSystem();
ResetWindowSystem();
// Create toolbars
SetupColorsAndInitialWindow();
@@ -792,7 +798,7 @@ static void StartScenario(void)
GfxLoadSprites();
// Reinitialize windows
InitWindowSystem();
ResetWindowSystem();
LoadStringWidthTable();
SetupColorsAndInitialWindow();
@@ -1327,7 +1333,7 @@ bool AfterLoadGame(uint version)
}
// Initialize windows
InitWindowSystem();
ResetWindowSystem();
SetupColorsAndInitialWindow();
w = FindWindowById(WC_MAIN_WINDOW, 0);