diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-05-20 00:30:19 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-05-20 00:30:19 +0300 |
commit | 9c6a1ce0b669485967e7a81f0c96d122a9972957 (patch) | |
tree | ab1827e4cc371a26f40ff4ef2d65c2ecebc8b42d /src/gui | |
parent | 12478121f86ea50672f5e392bc2b1e29c7fac700 (diff) | |
download | manaplus-9c6a1ce0b669485967e7a81f0c96d122a9972957.tar.gz manaplus-9c6a1ce0b669485967e7a81f0c96d122a9972957.tar.bz2 manaplus-9c6a1ce0b669485967e7a81f0c96d122a9972957.tar.xz manaplus-9c6a1ce0b669485967e7a81f0c96d122a9972957.zip |
Fix memory leak in fast text draw code.
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/fonts/font.cpp | 2 | ||||
-rw-r--r-- | src/gui/gui.cpp | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/src/gui/fonts/font.cpp b/src/gui/fonts/font.cpp index 58528f383..6ba7a2ffb 100644 --- a/src/gui/fonts/font.cpp +++ b/src/gui/fonts/font.cpp @@ -392,6 +392,8 @@ void Font::generate(TextChunk &chunk) //search.erase(key); cache->remove(chunk2); chunk.img = chunk2->img; + chunk2->img = nullptr; + delete chunk2; // logger->log("cached image: " + chunk.text); } else diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index 39ab67be1..66d72af7b 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -265,15 +265,16 @@ Gui::~Gui() mMouseCursors = nullptr; } + if (windowContainer) + windowContainer->slowLogic(); + delete getTop(); + delete2(mGuiFont); delete2(boldFont); delete2(mHelpFont); delete2(mSecureFont); delete2(mInfoParticleFont); delete2(mNpcFont); - if (windowContainer) - windowContainer->slowLogic(); - delete getTop(); delete2(guiInput); |