aboutsummaryrefslogtreecommitdiff
path: root/scumm/script_v8.cpp
diff options
context:
space:
mode:
authorMax Horn2003-01-12 21:13:22 +0000
committerMax Horn2003-01-12 21:13:22 +0000
commitca88dff5e7215a5556b98daec00830eb59c1f0be (patch)
treed6b0ba4bce1e087dea36069d9cffd19c975830bf /scumm/script_v8.cpp
parent2e4ba0c29f2205d6d943b81ee088d3f406c285f2 (diff)
downloadscummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.tar.gz
scummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.tar.bz2
scummvm-rg350-ca88dff5e7215a5556b98daec00830eb59c1f0be.zip
work around a script bug in COMI; cleanup; re-enabled array assert
svn-id: r6437
Diffstat (limited to 'scumm/script_v8.cpp')
-rw-r--r--scumm/script_v8.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/scumm/script_v8.cpp b/scumm/script_v8.cpp
index 3a8092183b..2bf668a240 100644
--- a/scumm/script_v8.cpp
+++ b/scumm/script_v8.cpp
@@ -704,13 +704,13 @@ void Scumm_v8::o8_arrayOps()
break;
case 0x15: // SO_ASSIGN_SCUMMVAR_LIST
b = pop();
- c = pop();
+ len = getStackList(list, sizeof(list) / sizeof(list[0]));
d = readVar(array);
if (d == 0) {
- defineArray(array, 5, 0, b + c);
+ defineArray(array, 5, 0, b + len);
}
- while (c--) {
- writeArray(array, 0, b + c, pop());
+ while (--len >= 0) {
+ writeArray(array, 0, b + len, list[len]);
}
break;
case 0x16: // SO_ASSIGN_2DIM_LIST