Don't try removing sprites past the end of list

This commit is contained in:
Michał Janiszewski 2018-02-10 12:38:57 +01:00 committed by Michał Janiszewski
parent 73c861ab59
commit ab6ce6fd13
1 changed files with 2 additions and 1 deletions

View File

@ -629,7 +629,8 @@ void sprite_remove(rct_sprite *sprite)
size_t quadrantIndex = GetSpatialIndexOffset(sprite->unknown.x, sprite->unknown.y);
uint16 *spriteIndex = &gSpriteSpatialIndex[quadrantIndex];
rct_sprite *quadrantSprite;
while ((quadrantSprite = get_sprite(*spriteIndex)) != sprite) {
while (*spriteIndex != SPRITE_INDEX_NULL && (quadrantSprite = get_sprite(*spriteIndex)) != sprite)
{
spriteIndex = &quadrantSprite->unknown.next_in_quadrant;
}
*spriteIndex = sprite->unknown.next_in_quadrant;