From 7d86909a902cfc7ecb72cdbe80474920d66f0075 Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Mon, 17 Jan 2022 18:29:04 +0000 Subject: [PATCH] Ensure that sprite data is cleared when loading over an existing sprite Fixes crash when looking at recolour sprite in sprite viewer window which has been overriden by a non-recolour sprite by a faulty GRF --- src/spritecache.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/spritecache.cpp b/src/spritecache.cpp index 3d73f89440..e191883783 100644 --- a/src/spritecache.cpp +++ b/src/spritecache.cpp @@ -727,6 +727,8 @@ bool LoadNextSprite(int load_index, SpriteFile &file, uint file_sprite_id) if (data != nullptr) { assert(data == _last_sprite_allocation.GetPtr()); sc->buffer = std::move(_last_sprite_allocation); + } else { + sc->buffer.Clear(); } sc->lru = 0; sc->id = file_sprite_id;