aboutsummaryrefslogtreecommitdiff
path: root/engines/sludge
diff options
context:
space:
mode:
authoryinsimei2017-06-17 21:13:29 +0200
committerEugene Sandulenko2017-07-13 18:27:45 +0200
commit82f023d9bd87ee39de5f93f6ac63afbcd74f8915 (patch)
tree52208dbc95313770676bf183c23114fe144dbc82 /engines/sludge
parentea1f2412ee18e5825f28d7ea64586c163647f4ea (diff)
downloadscummvm-rg350-82f023d9bd87ee39de5f93f6ac63afbcd74f8915.tar.gz
scummvm-rg350-82f023d9bd87ee39de5f93f6ac63afbcd74f8915.tar.bz2
scummvm-rg350-82f023d9bd87ee39de5f93f6ac63afbcd74f8915.zip
SLUDGE: free surfaces in freeze struct
Diffstat (limited to 'engines/sludge')
-rw-r--r--engines/sludge/freeze.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/engines/sludge/freeze.cpp b/engines/sludge/freeze.cpp
index 57d7d0dbe8..2d8a7bcb06 100644
--- a/engines/sludge/freeze.cpp
+++ b/engines/sludge/freeze.cpp
@@ -249,6 +249,14 @@ void unfreeze(bool killImage) {
frozenStuff = frozenStuff->next;
overRegion = NULL;
+
+ // free current frozen screen struct
+ if (killMe->backdropSurface.getPixels())
+ killMe->backdropSurface.free();
+ if (killMe->lightMapSurface.getPixels())
+ killMe->lightMapSurface.free();
+ if (killMe->zBufferImage.getPixels())
+ killMe->zBufferImage.free();
delete killMe;
killMe = NULL;