diff --git a/src/newgrf.cpp b/src/newgrf.cpp index 5454819845..19a374002e 100644 --- a/src/newgrf.cpp +++ b/src/newgrf.cpp @@ -5378,6 +5378,11 @@ static void NewSpriteGroup(ByteReader *buf) return; } + if (num_loaded + num_loading == 0) { + grfmsg(1, "NewSpriteGroup: no result, skipping invalid RealSpriteGroup"); + break; + } + assert(RealSpriteGroup::CanAllocateItem()); RealSpriteGroup *group = new RealSpriteGroup(); group->nfo_line = _cur.nfo_line;