aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/wintermute/video/VidTheoraPlayer.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/wintermute/video/VidTheoraPlayer.cpp b/engines/wintermute/video/VidTheoraPlayer.cpp
index aeba5608b3..8398578c2b 100644
--- a/engines/wintermute/video/VidTheoraPlayer.cpp
+++ b/engines/wintermute/video/VidTheoraPlayer.cpp
@@ -130,7 +130,8 @@ void CVidTheoraPlayer::cleanup() {
//////////////////////////////////////////////////////////////////////////
HRESULT CVidTheoraPlayer::initialize(const Common::String &filename, const Common::String &subtitleFile) {
cleanup();
-
+
+ _filename = filename;
_file = Game->_fileManager->OpenFile(filename, true, false);
if (!_file) return E_FAIL;
@@ -818,6 +819,10 @@ HRESULT CVidTheoraPlayer::Persist(CBPersistMgr *PersistMgr) {
PersistMgr->Transfer(TMEMBER(_looping));
PersistMgr->Transfer(TMEMBER(_volume));
+ if (!PersistMgr->_saving && (_savedState != THEORA_STATE_NONE)) {
+ initializeSimple();
+ }
+
return S_OK;
}