diff options
author | Matthew Hoops | 2010-11-17 18:22:22 +0000 |
---|---|---|
committer | Matthew Hoops | 2010-11-17 18:22:22 +0000 |
commit | 4e445b94679f330ef0653821842d13056ff159bb (patch) | |
tree | 83139421fba86981300657fbbd38fffae4039cbc /engines/mohawk/graphics.cpp | |
parent | e086ef00965a4ee77a241ea26bf50c6446030f43 (diff) | |
download | scummvm-rg350-4e445b94679f330ef0653821842d13056ff159bb.tar.gz scummvm-rg350-4e445b94679f330ef0653821842d13056ff159bb.tar.bz2 scummvm-rg350-4e445b94679f330ef0653821842d13056ff159bb.zip |
MOHAWK: Apply patch #2988976: "MYST: Fix drawing partial subimages"
svn-id: r54297
Diffstat (limited to 'engines/mohawk/graphics.cpp')
-rw-r--r-- | engines/mohawk/graphics.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/engines/mohawk/graphics.cpp b/engines/mohawk/graphics.cpp index 4aca954155..e4f9a009fd 100644 --- a/engines/mohawk/graphics.cpp +++ b/engines/mohawk/graphics.cpp @@ -206,7 +206,11 @@ void MystGraphics::copyImageSectionToScreen(uint16 image, Common::Rect src, Comm if (surface) { uint16 width = MIN<int>(surface->w, dest.width()); uint16 height = MIN<int>(surface->h, dest.height()); - _vm->_system->copyRectToScreen((byte *)surface->getBasePtr(src.left, src.top), surface->pitch, dest.left, dest.top, width, height); + + // Convert from bitmap coordinates to surface coordinates + uint16 top = surface->h - src.top - height; + + _vm->_system->copyRectToScreen((byte *)surface->getBasePtr(src.left, top), surface->pitch, dest.left, dest.top, width, height); surface->free(); delete surface; } |