From e2d14e0499174fe1769be8c5181cb304c14babe3 Mon Sep 17 00:00:00 2001 From: Vladimir Menshakov Date: Sat, 2 Jan 2010 22:32:24 +0000 Subject: fixed memory leak svn-id: r46904 --- engines/teenagent/teenagent.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/engines/teenagent/teenagent.cpp b/engines/teenagent/teenagent.cpp index ab97233052..7f941f7407 100644 --- a/engines/teenagent/teenagent.cpp +++ b/engines/teenagent/teenagent.cpp @@ -273,12 +273,6 @@ bool TeenAgentEngine::showLogo(const Common::String &name) { uint n = logo.files_count(); for(uint f = 0; f < 4; ++f) for(uint i = 2; i <= n; ++i) { - _system->copyRectToScreen(bg, 320, 0, 0, 320, 200); - - frame = logo.getStream(i); - if (frame == NULL) - return true; - Common::Event event; while (_event->pollEvent(event)) { switch(event.type) { @@ -291,8 +285,15 @@ bool TeenAgentEngine::showLogo(const Common::String &name) { default: ; } } + _system->copyRectToScreen(bg, 320, 0, 0, 320, 200); + + frame = logo.getStream(i); + if (frame == NULL) + return true; + Surface s; s.load(frame, Surface::kTypeOns); + delete frame; if (s.empty()) return true; -- cgit v1.2.3