aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-07-23 12:37:58 +0000
committerMartin Kiewitz2010-07-23 12:37:58 +0000
commit32c81fa9183a574adeb766d9dbc265f665978153 (patch)
tree03b2a3b7ece28488e5dae3818d2fd3d6731b98a2
parent7b485a797884dc24ddcde990dba450ca610875d9 (diff)
downloadscummvm-rg350-32c81fa9183a574adeb766d9dbc265f665978153.tar.gz
scummvm-rg350-32c81fa9183a574adeb766d9dbc265f665978153.tar.bz2
scummvm-rg350-32c81fa9183a574adeb766d9dbc265f665978153.zip
SCI: fixing kNewWindow (SCI1.1)
check differently for null restoreRect, fixes pq3 some windows not getting fully removed calling showBits on actual dims and not on restoreRect, fixes lb2 about window issues (and possible qfg1vga window issues as well) svn-id: r51204
-rw-r--r--engines/sci/graphics/ports.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/engines/sci/graphics/ports.cpp b/engines/sci/graphics/ports.cpp
index 611db1061a..bc13d152b8 100644
--- a/engines/sci/graphics/ports.cpp
+++ b/engines/sci/graphics/ports.cpp
@@ -173,7 +173,7 @@ reg_t GfxPorts::kernelGetActive() {
reg_t GfxPorts::kernelNewWindow(Common::Rect dims, Common::Rect restoreRect, uint16 style, int16 priority, int16 colorPen, int16 colorBack, const char *title) {
Window *wnd = NULL;
- if (restoreRect.top != 0 && restoreRect.left != 0 && restoreRect.height() != 0 && restoreRect.width() != 0)
+ if (restoreRect.bottom != 0 && restoreRect.right != 0)
wnd = newWindow(dims, &restoreRect, title, style, priority, false);
else
wnd = newWindow(dims, NULL, title, style, priority, false);
@@ -367,7 +367,7 @@ void GfxPorts::drawWindow(Window *pWnd) {
if (!(wndStyle & SCI_WINDOWMGR_STYLE_TRANSPARENT))
_paint16->fillRect(r, GFX_SCREEN_MASK_VISUAL, pWnd->backClr);
- _paint16->bitsShow(pWnd->restoreRect);
+ _paint16->bitsShow(pWnd->dims);
}
setPort(oldport);
}