Reset neutral gray on start of new sequence BUG=oss-fuzz:10061 Change-Id: I4ea0844a0441e0efcd2d00fc86169619e22c2369
diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c index 9a1fb33..c7a4d94 100644 --- a/av1/decoder/decodeframe.c +++ b/av1/decoder/decodeframe.c
@@ -4379,6 +4379,7 @@ static INLINE void reset_frame_buffers(AV1_COMMON *cm) { RefCntBuffer *const frame_bufs = cm->buffer_pool->frame_bufs; + const SequenceHeader *const seq_params = &cm->seq_params; int i; memset(&cm->ref_frame_map, -1, sizeof(cm->ref_frame_map)); @@ -4392,6 +4393,9 @@ &frame_bufs[i].raw_frame_buffer); } frame_bufs[i].cur_frame_offset = 0; + // Previous sequence with different bitdepth may have set to a + // neutral gray in different bit depth, need reset here. + set_planes_to_neutral_grey(seq_params, &frame_bufs[i].buf, 0); av1_zero(frame_bufs[i].ref_frame_offset); } unlock_buffer_pool(cm->buffer_pool);