diff options
-rw-r--r-- | engines/wintermute/video/VidTheoraPlayer.cpp | 7 |
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; } |