From 7fe406a5ddbde7c46605437c13a9d79c6178f28e Mon Sep 17 00:00:00 2001 From: Sven Hesse Date: Sun, 8 Aug 2010 00:47:54 +0000 Subject: GOB: Fix video continuing svn-id: r51878 --- engines/gob/inter_v2.cpp | 13 +++++++------ engines/gob/videoplayer.cpp | 7 +++++-- 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/engines/gob/inter_v2.cpp b/engines/gob/inter_v2.cpp index 0ca2cc2d68..752d794127 100644 --- a/engines/gob/inter_v2.cpp +++ b/engines/gob/inter_v2.cpp @@ -982,12 +982,13 @@ void Inter_v2::o2_playImd() { props.x, props.y, props.startFrame, props.lastFrame, props.palCmd, props.palStart, props.palEnd, props.flags); - _vm->_vidPlayer->evaluateFlags(props); - - int slot; - if ((imd[0] != 0) && ((slot = _vm->_vidPlayer->openVideo(true, imd, props)) < 0)) { - WRITE_VAR(11, (uint32) -1); - return; + int slot = 0; + if (imd[0] != 0) { + _vm->_vidPlayer->evaluateFlags(props); + if ((slot = _vm->_vidPlayer->openVideo(true, imd, props)) < 0) { + WRITE_VAR(11, (uint32) -1); + return; + } } close = (props.lastFrame == -1); diff --git a/engines/gob/videoplayer.cpp b/engines/gob/videoplayer.cpp index b219d341da..bb9c232444 100644 --- a/engines/gob/videoplayer.cpp +++ b/engines/gob/videoplayer.cpp @@ -257,8 +257,11 @@ bool VideoPlayer::playFrame(int slot, Properties &properties) { bool primary = slot == 0; - if (video->decoder->getCurFrame() != properties.startFrame); - video->decoder->seek(properties.startFrame + 1); + if (video->decoder->getCurFrame() != properties.startFrame) { + video->decoder->disableSound(); + video->decoder->seek(properties.startFrame + 1, SEEK_SET, true); + video->decoder->enableSound(); + } bool modifiedPal = false; -- cgit v1.2.3