summaryrefslogtreecommitdiff
path: root/src/town_cmd.cpp
diff options
context:
space:
mode:
authorrubidium <rubidium@openttd.org>2007-08-05 21:20:55 +0000
committerrubidium <rubidium@openttd.org>2007-08-05 21:20:55 +0000
commit83e1fdcb0167c36729889511f7b1165038044c88 (patch)
treebfe043c51f23052fc39f35769a2ede1e66998148 /src/town_cmd.cpp
parentab5fa3add2f5f2feeb8f48127f6ee5ab69d42f65 (diff)
downloadopenttd-83e1fdcb0167c36729889511f7b1165038044c88.tar.xz
(svn r10799) -Fix: only calling QuickFree and not the destructor on pool cleanups might cause memory leaks due to the way C++ works.
Diffstat (limited to 'src/town_cmd.cpp')
-rw-r--r--src/town_cmd.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp
index 4fa9a8c85..48b20ffc7 100644
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -53,6 +53,10 @@ Town::Town(TileIndex tile)
Town::~Town()
{
+ DeleteName(this->townnametype);
+
+ if (CleaningPool()) return;
+
Industry *i;
/* Delete town authority window
@@ -87,15 +91,9 @@ Town::~Town()
MarkWholeScreenDirty();
- this->QuickFree();
this->xy = 0;
}
-void Town::QuickFree()
-{
- DeleteName(this->townnametype);
-}
-
// Local
static int _grow_town_result;