diff options
author | Paul Gilbert | 2012-06-21 22:58:58 +1000 |
---|---|---|
committer | Paul Gilbert | 2012-06-21 22:58:58 +1000 |
commit | 17289089e6232d464d9eef15f510d66542fbbec5 (patch) | |
tree | 535d13dd01cf74ee1760e6bee709dd81b0a6cd34 /engines/tony | |
parent | cdbc4aa28b5c47392369879b209f9635ff431195 (diff) | |
download | scummvm-rg350-17289089e6232d464d9eef15f510d66542fbbec5.tar.gz scummvm-rg350-17289089e6232d464d9eef15f510d66542fbbec5.tar.bz2 scummvm-rg350-17289089e6232d464d9eef15f510d66542fbbec5.zip |
TONY: Fix for adding dirty rects for 8-bit RLE images
Diffstat (limited to 'engines/tony')
-rw-r--r-- | engines/tony/gfxcore.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/engines/tony/gfxcore.cpp b/engines/tony/gfxcore.cpp index d34923e455..751802bb29 100644 --- a/engines/tony/gfxcore.cpp +++ b/engines/tony/gfxcore.cpp @@ -900,6 +900,9 @@ void RMGfxSourceBuffer8RLE::draw(CORO_PARAM, RMGfxTargetBuffer &bigBuf, RMGfxPri u = _dimx - (width + u); x1 = (prim->getDst()._x1 + _dimx - 1) - u; + // Specify the drawn area + bigBuf.addDirtyRect(Common::Rect(x1 - width, y1, x1, y1 + height)); + for (y = 0; y < height; y++) { // Decompression RLEDecompressLineFlipped(buf + x1, src + 2, u, width); @@ -911,6 +914,9 @@ void RMGfxSourceBuffer8RLE::draw(CORO_PARAM, RMGfxTargetBuffer &bigBuf, RMGfxPri buf += bigBuf.getDimx(); } } else { + // Specify the drawn area + bigBuf.addDirtyRect(Common::Rect(x1, y1, x1 + width, y1 + height)); + for (y = 0; y < height; y++) { // Decompression RLEDecompressLine(buf + x1, src + 2, u, width); @@ -922,9 +928,6 @@ void RMGfxSourceBuffer8RLE::draw(CORO_PARAM, RMGfxTargetBuffer &bigBuf, RMGfxPri buf += bigBuf.getDimx(); } } - - // Specify the drawn area - bigBuf.addDirtyRect(Common::Rect(x1, y1, x1 + width, y1 + height)); } |