From 5322606abe2bdcfc85f5d90036ad09610e29ca6f Mon Sep 17 00:00:00 2001 From: Bastien Bouclet Date: Mon, 5 Feb 2018 07:30:24 +0100 Subject: MOHAWK: RIVEN: Execute the stored opcode before resetting movies Otherwise the movie position is zero which leads the comparison with the stored opcode position to always be false. Fixes #10426, a regression from cf1171d4d9b43eba. --- engines/mohawk/riven_video.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'engines/mohawk') diff --git a/engines/mohawk/riven_video.cpp b/engines/mohawk/riven_video.cpp index 9bd185ed5d..745f96bda0 100644 --- a/engines/mohawk/riven_video.cpp +++ b/engines/mohawk/riven_video.cpp @@ -252,12 +252,6 @@ void RivenVideo::playBlocking(int32 endTime) { } } - if (playTillEnd) { - disable(); - stop(); - seek(0); - } - // Execute the stored opcode uint16 storedOpcodeMovieSlot = _vm->_scriptMan->getStoredMovieOpcodeSlot(); uint32 storedOpcodeTime = _vm->_scriptMan->getStoredMovieOpcodeTime(); @@ -265,6 +259,12 @@ void RivenVideo::playBlocking(int32 endTime) { _vm->_scriptMan->runStoredMovieOpcode(); } + if (playTillEnd) { + disable(); + stop(); + seek(0); + } + _vm->_cursor->showCursor(); } -- cgit v1.2.3