diff options
author | Travis Howell | 2004-10-03 04:49:20 +0000 |
---|---|---|
committer | Travis Howell | 2004-10-03 04:49:20 +0000 |
commit | b1bf9f94d8028e856abdcb6372af7f6d6505b07b (patch) | |
tree | f9ee89d1deaaf80881e476f2708da3beb4caa784 /scumm | |
parent | e72ccd620be6e5648094ad7acc8011c228bfc235 (diff) | |
download | scummvm-rg350-b1bf9f94d8028e856abdcb6372af7f6d6505b07b.tar.gz scummvm-rg350-b1bf9f94d8028e856abdcb6372af7f6d6505b07b.tar.bz2 scummvm-rg350-b1bf9f94d8028e856abdcb6372af7f6d6505b07b.zip |
Should use findWrappedBlock
svn-id: r15385
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/script_v72he.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp index 18f97d74a9..3f016d46af 100644 --- a/scumm/script_v72he.cpp +++ b/scumm/script_v72he.cpp @@ -2408,12 +2408,11 @@ void ScummEngine_v72he::o72_unknownFA() { } void ScummEngine_v72he::decodeParseString(int m, int n) { - byte b, *ptr; int i, color, size; int args[31]; byte name[1024]; - b = fetchScriptByte(); + byte b = fetchScriptByte(); switch (b) { case 65: // SO_AT @@ -2454,10 +2453,13 @@ void ScummEngine_v72he::decodeParseString(int m, int n) { printString(m, name); break; case 0xE1: - ptr = getResourceAddress(rtTalkie, pop()); - size = READ_BE_UINT32(ptr + 12); - memcpy(name, ptr + 16, size); + { + const byte *dataPtr = getResourceAddress(rtTalkie, pop()); + const byte *text = findWrappedBlock(MKID('TEXT'), dataPtr, 0, 0); + size = getResourceDataSize(text); + memcpy(name, text, size); printString(m, name); + } break; case 0xF9: color = pop(); |