aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2017-02-18 17:06:00 -0500
committerPaul Gilbert2017-02-18 17:06:00 -0500
commitd65c717a448d9afe9dc820756fa16e835d31176e (patch)
tree885f10780d5444b03569159b21e16d24599db1da /engines
parent7762dae0f9816e3d25efaffe7e2b397e7d8c2bd2 (diff)
downloadscummvm-rg350-d65c717a448d9afe9dc820756fa16e835d31176e.tar.gz
scummvm-rg350-d65c717a448d9afe9dc820756fa16e835d31176e.tar.bz2
scummvm-rg350-d65c717a448d9afe9dc820756fa16e835d31176e.zip
TITANIC: Workaround original Maitre'D bug where _musicHandler was null
Diffstat (limited to 'engines')
-rw-r--r--engines/titanic/npcs/maitre_d.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/titanic/npcs/maitre_d.cpp b/engines/titanic/npcs/maitre_d.cpp
index 0e2f62ccd8..6ac69d9079 100644
--- a/engines/titanic/npcs/maitre_d.cpp
+++ b/engines/titanic/npcs/maitre_d.cpp
@@ -119,6 +119,11 @@ bool CMaitreD::EnterViewMsg(CEnterViewMsg *msg) {
if (_musicName != "STMusic" && (!_musicSet || _priorMusicName == _musicName))
return true;
+ // WORKAROUND: It's possible in the original to not have a music handler set
+ // if you start and stop the phonograph, then save and restore the game
+ if (!CMusicRoom::_musicHandler)
+ return true;
+
if (_musicName.contains("nasty ambient"))
startTalking(this, 111, findView());
else if (!CMusicRoom::_musicHandler->checkInstrument(SNAKE))