mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-21 03:31:40 +00:00
TWINE: check for invalid clip rect in drawBrickSprite
This commit is contained in:
parent
1b4bffe1ad
commit
323ca6e8e4
@ -326,9 +326,7 @@ void Redraw::processDrawListShadows(const DrawListStruct &drawCmd) {
|
||||
|
||||
_engine->_interface->setClip(renderRect);
|
||||
|
||||
if (_engine->_interface->textWindow.left <= _engine->_interface->textWindow.right && _engine->_interface->textWindow.top <= _engine->_interface->textWindow.bottom) {
|
||||
_engine->_grid->drawSprite(drawCmd.offset, renderRect.left, renderRect.top, _engine->_resources->spriteShadowPtr);
|
||||
}
|
||||
_engine->_grid->drawSprite(drawCmd.offset, renderRect.left, renderRect.top, _engine->_resources->spriteShadowPtr);
|
||||
|
||||
const int32 tmpX = (drawCmd.x + BRICK_HEIGHT) / BRICK_SIZE;
|
||||
const int32 tmpY = drawCmd.y / BRICK_HEIGHT;
|
||||
|
@ -509,6 +509,10 @@ bool Grid::drawSprite(int32 posX, int32 posY, const SpriteData &ptr) {
|
||||
|
||||
// WARNING: Rewrite this function to have better performance
|
||||
bool Grid::drawBrickSprite(int32 index, int32 posX, int32 posY, const uint8 *ptr, bool isSprite) {
|
||||
if (_engine->_interface->textWindow.left > _engine->_interface->textWindow.right || _engine->_interface->textWindow.top > _engine->_interface->textWindow.bottom) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const int32 left = posX + *(ptr + 2);
|
||||
if (left > _engine->_interface->textWindow.right) {
|
||||
return false;
|
||||
|
Loading…
x
Reference in New Issue
Block a user