diff options
author | Thanasis Antoniou | 2019-07-28 14:05:26 +0300 |
---|---|---|
committer | Thanasis Antoniou | 2019-07-28 14:06:26 +0300 |
commit | 4b482b2d3e32e834eefb4d6af1a175f2b2ac75da (patch) | |
tree | ae4983425d7ae2c19796c6966070ce92248b9bfb /engines/bladerunner/font.cpp | |
parent | 6884441f519fa95da54f9ea977c900321ab48701 (diff) | |
download | scummvm-rg350-4b482b2d3e32e834eefb4d6af1a175f2b2ac75da.tar.gz scummvm-rg350-4b482b2d3e32e834eefb4d6af1a175f2b2ac75da.tar.bz2 scummvm-rg350-4b482b2d3e32e834eefb4d6af1a175f2b2ac75da.zip |
BLADERUNNER: prevent seg fault in ESPER
Also added CLIP to all getBasePtr() calls where it would seem appropriate/safer to do so
Diffstat (limited to 'engines/bladerunner/font.cpp')
-rw-r--r-- | engines/bladerunner/font.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/engines/bladerunner/font.cpp b/engines/bladerunner/font.cpp index 2512f8671c..68e0408585 100644 --- a/engines/bladerunner/font.cpp +++ b/engines/bladerunner/font.cpp @@ -118,7 +118,7 @@ void Font::drawChar(Graphics::Surface *dst, uint32 chr, int x, int y, uint32 col return; } - uint16 *dstPtr = (uint16 *)dst->getBasePtr(x + _characters[characterIndex].x, y + _characters[characterIndex].y); + uint16 *dstPtr = (uint16 *)dst->getBasePtr(CLIP(x + _characters[characterIndex].x, 0, dst->w - 1), CLIP(y + _characters[characterIndex].y, 0, dst->h - 1)); uint16 *srcPtr = &_data[_characters[characterIndex].dataOffset]; int width = _characters[characterIndex].width; int height = _characters[characterIndex].height; |