aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippos Karapetis2008-12-09 21:09:45 +0000
committerFilippos Karapetis2008-12-09 21:09:45 +0000
commit5f4518a2ad36573516f1568cc6fca613bc31a8c0 (patch)
tree65f58aef6a0fdd22d7761e764f875afe03febf63
parentcabfbb49031b142a726ae0c966861f1f7f74f43f (diff)
downloadscummvm-rg350-5f4518a2ad36573516f1568cc6fca613bc31a8c0.tar.gz
scummvm-rg350-5f4518a2ad36573516f1568cc6fca613bc31a8c0.tar.bz2
scummvm-rg350-5f4518a2ad36573516f1568cc6fca613bc31a8c0.zip
Some more dirty rectangle fixes (some glitches still remain)
svn-id: r35294
-rw-r--r--engines/saga/interface.cpp1
-rw-r--r--engines/saga/render.cpp3
2 files changed, 3 insertions, 1 deletions
diff --git a/engines/saga/interface.cpp b/engines/saga/interface.cpp
index 30b5b5fcaa..dcf8705513 100644
--- a/engines/saga/interface.cpp
+++ b/engines/saga/interface.cpp
@@ -379,6 +379,7 @@ int Interface::activate() {
}
_vm->_gfx->showCursor(true);
draw();
+ _vm->_render->setFullRefresh(true);
}
return SUCCESS;
diff --git a/engines/saga/render.cpp b/engines/saga/render.cpp
index 063cc4c757..3bee811eab 100644
--- a/engines/saga/render.cpp
+++ b/engines/saga/render.cpp
@@ -230,7 +230,8 @@ void Render::restoreChangedRects() {
Common::List<Common::Rect>::const_iterator it;
for (it = _dirtyRects.begin(); it != _dirtyRects.end(); ++it) {
//_backGroundSurface.frameRect(*it, 1); // DEBUG
- g_system->copyRectToScreen((byte *)_backGroundSurface.pixels, _backGroundSurface.w, it->left, it->top, it->width(), it->height());
+ if (it->bottom <= _vm->_scene->getHeight())
+ g_system->copyRectToScreen((byte *)_backGroundSurface.pixels, _backGroundSurface.w, it->left, it->top, it->width(), it->height());
}
}
_dirtyRects.clear();