aboutsummaryrefslogtreecommitdiff
path: root/engines/lab/anim.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/lab/anim.cpp')
-rw-r--r--engines/lab/anim.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/engines/lab/anim.cpp b/engines/lab/anim.cpp
index 3bed3656d3..ac51860ed7 100644
--- a/engines/lab/anim.cpp
+++ b/engines/lab/anim.cpp
@@ -141,18 +141,20 @@ void Anim::diffNextFrame(bool onlyDiffData) {
switch (_header) {
case 8:
- _vm->_utils->readBlock(_diffPalette, _size, &_diffFile);
+ memcpy(_diffPalette, _diffFile, _size);
+ _diffFile += _size;
_isPal = true;
break;
case 10:
_rawDiffBM._planes[_curBit] = _diffFile;
- if (onlyDiffData)
+ if (onlyDiffData) {
_diffFile += _size;
- else
- _vm->_utils->readBlock(DrawBitMap->_planes[_curBit], _size, &_diffFile);
-
+ } else {
+ memcpy(DrawBitMap->_planes[_curBit], _diffFile, _size);
+ _diffFile += _size;
+ }
_curBit++;
break;