diff options
Diffstat (limited to 'graphics/video/video_decoder.cpp')
-rw-r--r-- | graphics/video/video_decoder.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/graphics/video/video_decoder.cpp b/graphics/video/video_decoder.cpp index fe4a5848f3..081f47bf78 100644 --- a/graphics/video/video_decoder.cpp +++ b/graphics/video/video_decoder.cpp @@ -42,7 +42,7 @@ bool VideoDecoder::loadFile(const Common::String &filename) { return false; } - return load(*file); + return load(file); } uint32 VideoDecoder::getElapsedTime() const { @@ -64,7 +64,7 @@ void VideoDecoder::setSystemPalette() { delete[] sysPalette; } -bool VideoDecoder::needsUpdate() const { +bool VideoDecoder::needsUpdate() const { return !endOfVideo() && getTimeToNextFrame() == 0; } @@ -81,9 +81,14 @@ bool VideoDecoder::endOfVideo() const { void VideoDecoder::pauseVideo(bool pause) { if (pause) { _pauseLevel++; - } else { - assert(_pauseLevel); // We can't go negative + + // We can't go negative + } else if (_pauseLevel) { _pauseLevel--; + + // Do nothing + } else { + return; } if (_pauseLevel == 1 && pause) { |