diff options
author | Filippos Karapetis | 2015-04-09 13:44:39 +0300 |
---|---|---|
committer | Filippos Karapetis | 2015-04-09 13:44:39 +0300 |
commit | ec999f1cb74dff8c42c69898bb6cbc3823b169dd (patch) | |
tree | d0c3fd1f268f788700cf719785bd5ef6133fe1d4 /engines/mads/user_interface.cpp | |
parent | 47afe424c194d5d4fd1797948b53f999473fe922 (diff) | |
download | scummvm-rg350-ec999f1cb74dff8c42c69898bb6cbc3823b169dd.tar.gz scummvm-rg350-ec999f1cb74dff8c42c69898bb6cbc3823b169dd.tar.bz2 scummvm-rg350-ec999f1cb74dff8c42c69898bb6cbc3823b169dd.zip |
MADS: Plug some memory leaks
Surfaces should be freed (to free their inner allocated surface
buffers) before being deleted
Diffstat (limited to 'engines/mads/user_interface.cpp')
-rw-r--r-- | engines/mads/user_interface.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/engines/mads/user_interface.cpp b/engines/mads/user_interface.cpp index 93a555d9c7..1e5a1d80d2 100644 --- a/engines/mads/user_interface.cpp +++ b/engines/mads/user_interface.cpp @@ -164,6 +164,7 @@ void UISlots::draw(bool updateFlag, bool delFlag) { MSurface *spr = sprite->flipHorizontal(); userInterface.mergeFrom(spr, spr->getBounds(), slot._position, sprite->getTransparencyIndex()); + spr->free(); delete spr; } else { userInterface.mergeFrom(sprite, sprite->getBounds(), slot._position, |