You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We load a frame from the memory cache and the next frame from the decoder.
We load a frame from active resources and the next frame from the decoder.
When we load a frame from cache or active resources, the decoder does not contain the image data for that frame. Certain disposal types require the data from the previous frame to be the starting point for the next frame. When this data isn't available, we see partially filled out frames.
Each time we call get() on a drawable resource, we
get a new Drawable. We call get() repeatedly on
resources when they are retrieved from either the
set of active resources or the in memory cache.
Each time we create a new GifDrawable it holds on
to one or two temporary Bitmaps outside it's
shared state to render the current frame and obey
the dispose_previous method. This change means we
more aggressively cleanup those resources when
we think each Drawable is no longer being used.
The side affect is that we may reset back to
the beginning of the Drawable in some
circumstances.
Cleanup in in memory resources makes it less
likely that frames would be retrieved from
in memory, so this also works toward bumptech#207.
Similar to #204, except that I've only seen this after restarting a GIF. Just loading the gif and letting it play doesn't appear to reproduce this.
The text was updated successfully, but these errors were encountered: