Each frame display would add an item to the cache limiting list without checking if it was already in the list. Limiting would then free image buffers when the length of the list exceeded USE_FRAME_CACHE_LIMIT (currently 30). In practice this meant short animations would free and reload frames during playback.