diff options
author | Max Horn | 2003-01-13 13:37:43 +0000 |
---|---|---|
committer | Max Horn | 2003-01-13 13:37:43 +0000 |
commit | e704837f5c987a840c6ef690807c319425b85ea5 (patch) | |
tree | f488e41e229c1f9cd63377e234876af20bcec76e /scumm | |
parent | 35d3d26f0cd4ca11beae544fa3c36f32c2c0df8b (diff) | |
download | scummvm-rg350-e704837f5c987a840c6ef690807c319425b85ea5.tar.gz scummvm-rg350-e704837f5c987a840c6ef690807c319425b85ea5.tar.bz2 scummvm-rg350-e704837f5c987a840c6ef690807c319425b85ea5.zip |
fix off by one error
svn-id: r6442
Diffstat (limited to 'scumm')
-rw-r--r-- | scumm/boxes.cpp | 4 | ||||
-rw-r--r-- | scumm/scummvm.cpp | 13 |
2 files changed, 9 insertions, 8 deletions
diff --git a/scumm/boxes.cpp b/scumm/boxes.cpp index c57ca1e27e..088ce91173 100644 --- a/scumm/boxes.cpp +++ b/scumm/boxes.cpp @@ -136,9 +136,9 @@ int Scumm::getScale(int box, int x, int y) if (_features & GF_AFTER_V8) { int slot = FROM_LE_32(ptr->v8.scaleSlot); if (slot) { - assert(0 <= slot && slot < 20); + assert(1 <= slot && slot <= 20); int scaleX = 0, scaleY = 0; - ScaleSlot &s = _scaleSlots[slot]; + ScaleSlot &s = _scaleSlots[slot-1]; if (s.y1 == s.y2 && s.x1 == s.x2) error("Invalid scale slot %d", slot); diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp index 63afbc2286..8c9bea8b85 100644 --- a/scumm/scummvm.cpp +++ b/scumm/scummvm.cpp @@ -980,12 +980,13 @@ void Scumm::setScaleItem(int slot, int a, int b, int c, int d) void Scumm::setScaleSlot(int slot, int x1, int y1, int scale1, int x2, int y2, int scale2) { - _scaleSlots[slot].x2 = x2; - _scaleSlots[slot].y2 = y2; - _scaleSlots[slot].scale2 = scale2; - _scaleSlots[slot].x1 = x1; - _scaleSlots[slot].y1 = y1; - _scaleSlots[slot].scale1 = scale1; + assert(1 <= slot && slot <= 20); + _scaleSlots[slot-1].x2 = x2; + _scaleSlots[slot-1].y2 = y2; + _scaleSlots[slot-1].scale2 = scale2; + _scaleSlots[slot-1].x1 = x1; + _scaleSlots[slot-1].y1 = y1; + _scaleSlots[slot-1].scale1 = scale1; } void Scumm::dumpResource(char *tag, int idx, byte *ptr) |