From 91d2b5d31e72f635e0f7d498f632fcd942713a15 Mon Sep 17 00:00:00 2001 From: yinsimei Date: Mon, 3 Jul 2017 21:23:35 +0200 Subject: SLUDGE: kill a sprite bank --- engines/sludge/sprites.cpp | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) (limited to 'engines/sludge/sprites.cpp') diff --git a/engines/sludge/sprites.cpp b/engines/sludge/sprites.cpp index dc3dc82205..161cb6237b 100644 --- a/engines/sludge/sprites.cpp +++ b/engines/sludge/sprites.cpp @@ -75,21 +75,6 @@ extern Graphics::Surface backdropSurface; unsigned char currentBurnR = 0, currentBurnG = 0, currentBurnB = 0; void forgetSpriteBank(spriteBank &forgetme) { -#if 0 - deleteTextures(forgetme.myPalette.numTextures, forgetme.myPalette.tex_names); - if (forgetme.isFont) { - deleteTextures(forgetme.myPalette.numTextures, forgetme.myPalette.burnTex_names); - delete [] forgetme.myPalette.burnTex_names; - forgetme.myPalette.burnTex_names = NULL; - } - - delete [] forgetme.myPalette.tex_names; - forgetme.myPalette.tex_names = NULL; - delete[] forgetme.myPalette.tex_w; - forgetme.myPalette.tex_w = NULL; - delete[] forgetme.myPalette.tex_h; - forgetme.myPalette.tex_h = NULL; -#endif if (forgetme.myPalette.pal) { delete[] forgetme.myPalette.pal; forgetme.myPalette.pal = NULL; @@ -101,7 +86,12 @@ void forgetSpriteBank(spriteBank &forgetme) { forgetme.myPalette.b = NULL; } - delete forgetme.sprites; + for (int i = 0; i < forgetme.total; ++i) { + forgetme.sprites[i].surface.free(); + forgetme.sprites[i].burnSurface.free(); + } + + delete []forgetme.sprites; forgetme.sprites = NULL; // TODO: also remove sprite bank from allLoadedBanks -- cgit v1.2.3