aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v100he.cpp
diff options
context:
space:
mode:
authorTravis Howell2005-04-18 11:19:54 +0000
committerTravis Howell2005-04-18 11:19:54 +0000
commit8d01148b797f66af457434284b3a41bd18b86098 (patch)
tree206d028858ad6938e444a1cf1bcea8f6a69f2201 /scumm/script_v100he.cpp
parent769b2fed4625828e7572f96d95727f79ad34f79e (diff)
downloadscummvm-rg350-8d01148b797f66af457434284b3a41bd18b86098.tar.gz
scummvm-rg350-8d01148b797f66af457434284b3a41bd18b86098.tar.bz2
scummvm-rg350-8d01148b797f66af457434284b3a41bd18b86098.zip
Sound size should only include sound data.
svn-id: r17667
Diffstat (limited to 'scumm/script_v100he.cpp')
-rw-r--r--scumm/script_v100he.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/scumm/script_v100he.cpp b/scumm/script_v100he.cpp
index 9fd166246d..1494cdc40f 100644
--- a/scumm/script_v100he.cpp
+++ b/scumm/script_v100he.cpp
@@ -2191,6 +2191,7 @@ void ScummEngine_v100he::o100_writeFile() {
}
void ScummEngine_v100he::o100_getResourceSize() {
+ const byte *ptr;
int size, type;
int resid = pop();
@@ -2214,15 +2215,18 @@ void ScummEngine_v100he::o100_getResourceSize() {
int offs;
_sound->getHEMusicDetails(resid, offs, size);
push(size);
- return;
+ } else {
+ ptr = getResourceAddress(rtSound, resid);
+ assert(ptr);
+ size = READ_BE_UINT32(ptr + 4) - 40;
+ push(size);
}
- type = rtSound;
- break;
+ return;
default:
error("o100_getResourceSize: default type %d", subOp);
}
- const byte *ptr = getResourceAddress(type, resid);
+ ptr = getResourceAddress(type, resid);
assert(ptr);
size = READ_BE_UINT32(ptr + 4) - 8;
push(size);