aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v72he.cpp
diff options
context:
space:
mode:
authorTravis Howell2005-05-01 01:02:34 +0000
committerTravis Howell2005-05-01 01:02:34 +0000
commit2260447e8b7a960a7e92c6c75f0ec66c079581b6 (patch)
tree336456041ee36fc7f94fed203f58e1f78f7f33ca /scumm/script_v72he.cpp
parent051977cd173b1b8efbba90e23d14479cec1bf2f5 (diff)
downloadscummvm-rg350-2260447e8b7a960a7e92c6c75f0ec66c079581b6.tar.gz
scummvm-rg350-2260447e8b7a960a7e92c6c75f0ec66c079581b6.tar.bz2
scummvm-rg350-2260447e8b7a960a7e92c6c75f0ec66c079581b6.zip
Add missing safety checks.
svn-id: r17877
Diffstat (limited to 'scumm/script_v72he.cpp')
-rw-r--r--scumm/script_v72he.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp
index 3274280269..de6bbb1062 100644
--- a/scumm/script_v72he.cpp
+++ b/scumm/script_v72he.cpp
@@ -1570,10 +1570,12 @@ void ScummEngine_v72he::o72_talkActor() {
Actor *a;
_actorToPrintStrFor = pop();
- a = derefActorSafe(_actorToPrintStrFor, "o72_talkActor");
_string[0].loadDefault();
- _string[0].color = a->_talkColor;
+ if (_actorToPrintStrFor != 0xFF) {
+ a = derefActorSafe(_actorToPrintStrFor, "o72_talkActor");
+ _string[0].color = a->_talkColor;
+ }
actorTalk(_scriptPointer);
_scriptPointer += resStrLen(_scriptPointer) + 1;
@@ -2258,8 +2260,10 @@ void ScummEngine_v72he::decodeParseString(int m, int n) {
_string[m].loadDefault();
if (n) {
_actorToPrintStrFor = pop();
- a = derefActorSafe(_actorToPrintStrFor, "decodeParseString");
- _string[0].color = a->_talkColor;
+ if (_actorToPrintStrFor != 0xFF) {
+ a = derefActorSafe(_actorToPrintStrFor, "decodeParseString");
+ _string[0].color = a->_talkColor;
+ }
}
break;
case 0xFF: