aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWillem Jan Palenstijn2011-04-26 23:48:36 +0200
committerWillem Jan Palenstijn2011-05-01 14:33:02 +0200
commit62404a87bb1aba6443626d1bda803d2991b52634 (patch)
treee8fc1792d498084e297808065202c63d105e4384
parent40df14a7558728019e9755bce57ddd7fd0ab877e (diff)
downloadscummvm-rg350-62404a87bb1aba6443626d1bda803d2991b52634.tar.gz
scummvm-rg350-62404a87bb1aba6443626d1bda803d2991b52634.tar.bz2
scummvm-rg350-62404a87bb1aba6443626d1bda803d2991b52634.zip
SCI: Round left/right edges in bitsShow to even coords
This fixes the vertical black line glitch in the QfG3 start menu (#3293351)
-rw-r--r--engines/sci/graphics/paint16.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/sci/graphics/paint16.cpp b/engines/sci/graphics/paint16.cpp
index bb23fb882c..5172f7cdc0 100644
--- a/engines/sci/graphics/paint16.cpp
+++ b/engines/sci/graphics/paint16.cpp
@@ -297,6 +297,11 @@ void GfxPaint16::bitsShow(const Common::Rect &rect) {
return;
_ports->offsetRect(workerRect);
+
+ // We adjust the left/right coordinates to even coordinates
+ workerRect.left &= 0xFFFE; // round down
+ workerRect.right = (workerRect.right + 1) & 0xFFFE; // round up
+
_screen->copyRectToScreen(workerRect);
}