diff options
-rw-r--r-- | engines/mohawk/riven_graphics.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/engines/mohawk/riven_graphics.cpp b/engines/mohawk/riven_graphics.cpp index 86b70d37ee..b9d82fbd39 100644 --- a/engines/mohawk/riven_graphics.cpp +++ b/engines/mohawk/riven_graphics.cpp @@ -198,12 +198,15 @@ public: return false; } - Common::Rect oldArea = Common::Rect( - newArea.right != _rect.right ? _rect.left + newArea.width() : _rect.left, - newArea.bottom != _rect.bottom ? _rect.top + newArea.height() : _rect.top, - newArea.left != _rect.left ? _rect.right - newArea.width() : _rect.right, - newArea.top != _rect.top ? _rect.bottom - newArea.height() : _rect.bottom - ); + Common::Rect oldArea; + if (newArea != _rect) { + oldArea = Common::Rect( + newArea.right != _rect.right ? _rect.left + newArea.width() : _rect.left, + newArea.bottom != _rect.bottom ? _rect.top + newArea.height() : _rect.top, + newArea.left != _rect.left ? _rect.right - newArea.width() : _rect.right, + newArea.top != _rect.top ? _rect.bottom - newArea.height() : _rect.bottom + ); + } int oldX = newArea.left != _rect.left ? _rect.left + newArea.width() : _rect.left; int oldY = newArea.top != _rect.top ? _rect.top + newArea.height() : _rect.top; |