From 74d08a1543b9200f22e609576bdc5c97cdd7e8ed Mon Sep 17 00:00:00 2001 From: Matthew Hoops Date: Sun, 30 Oct 2011 19:23:33 -0400 Subject: [PATCH] PEGASUS: Fix redrawMovieWorld() to only update when needed A partial revert of 2bba1d0c11d2ceb8a1ec1dc5a9f1910a90b5cf5a --- engines/pegasus/movie.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/engines/pegasus/movie.cpp b/engines/pegasus/movie.cpp index 1c07c4801413..8d6f0fab512f 100755 --- a/engines/pegasus/movie.cpp +++ b/engines/pegasus/movie.cpp @@ -87,7 +87,7 @@ void Movie::initFromMovieFile(const Common::String &fileName, bool transparent) } void Movie::redrawMovieWorld() { - if (_video) { + if (_video && _video->needsUpdate()) { const Graphics::Surface *frame = _video->decodeNextFrame(); if (!frame) @@ -194,8 +194,7 @@ void Movie::updateTime() { // The reason why we overrode TimeBase's updateTime(): // Again, avoiding timers and handling it here if (_video && !_video->isPaused()) { - if (_video->needsUpdate()) - redrawMovieWorld(); + redrawMovieWorld(); uint32 startTime = _startTime * getScale() / _startScale; uint32 stopTime = _stopTime * getScale() / _stopScale;