Closed Bug 1442037 Opened 2 years ago Closed 2 years ago
_discard Frames Animated Image .html | application crashed [@ mozilla::image::Decoder Factory::Clone Animation Decoder]
> [task 2018-02-28T20:00:21.607Z] 20:00:21 INFO - 02-28 12:00:04.660 F/MOZ_Assert( 804): Assertion failure: aDecoder->HasAnimation(), at /builds/worker/workspace/build/src/image/DecoderFactory.cpp:232 I've convinced myself it is the assert that is the problem, rather than being indicative of a problem. Possible sequence of events: 1) Metadata decode determines it is an animated image. 2) We create an AnimationSurfaceProvider and decode enough frames to go over the discard threshold. 3a) We reset the animation, and clone a new decoder. A task is waiting in the decoding task queue. OR 3b) Decoding finishes and we clone new decoder. We don't need any more frames at this moment, so we stop decoding and wait for the animation to progress to redecode. 4) Before the decoder gets a chance to run, we reset the animation again. The decoder hasn't produced any metadata and we trip the assert.
Assignee: nobody → aosmond
Status: NEW → ASSIGNED
Depends on: 523950
Attachment #8955124 - Flags: review?(tnikkel)
Attachment #8955124 - Flags: review?(tnikkel) → review+
Pushed by email@example.com: https://hg.mozilla.org/integration/mozilla-inbound/rev/3a5462439ead Fix an incorrect assert in DecoderFactory::CloneAnimationDecoder. r=tnikkel
You need to log in before you can comment on or make changes to this bug.